Group 3 Practice App Deliverable
Pre-release
Pre-release
Executive Summary
Summary of the overall project
We prepared a practice-app that provides many different functionalities. Essentially, everyone created their endpoint, providing a separate functionality that they would like to work on. We decided on the API's we would like to use, then implemented on separate branches. Everything came together in the master branch with pull requests.
Deployment URLs
- We have used Swagger to document our Rest API. You can see the Swagger UI here
- Frontend: Deployment
Basic Functionality
We have many different sub-applications you can visit.
- Playing chess
- Analyzing Tweets
- Currency Converter
- Listing cryptocurrency prices
- Quiz Creator
- Lyrics search
- Posts
- Email verification
- Watchlist
- User Authentication
Challenges we met
- Free tier EC2 instances are not powerful enough to serve, even to build, modern server side rendered frameworks. We could not build our frontend since EC2 instance do not have enough ram and CPU credits to complete the process. We had to restart the instance via AWS console. Hence, we had to serve our application in development mode, without getting an optimized build.
- We tried to deploy our applications via HTTPS protocol; however, Let's Encrypt do not give certificates to EC2 urls. The only solution we could find was buying a domain from a provider, which we did not want to do in the first place.
- Using HTTP streams was required for
Chess
andTwitter
sub-projects. We had a lot of truble to set up, use, and remove streams. - Some of the external APIs we used were not stable and caused a lot of debug sessions only to realize the problem was not in our project.
Status of deliverables
- Milestone Report: Done
- Requirements:
- Requirements - Done
- Design:
- Use Case Diagrams - Done
- Class Diagrams - Done
- Sequence Diagrams - Done
- Release from Github: Done
- Code: Ready
- Wiki: Up to date
- Meeting Notes: Up to date