Viewing Party API
Project Description
For this project, you will be finishing an API that provides endpoints to explore movies and create a Viewing Party Event that invites users and keeps track of a host. Your job is to connect with an external API and collect relevant information, set up the database to allow the creation of viewing parties, and handle some basic authorization.
Since this project has already been started by another developer, this is considered a brownfield project - this will likely echo your experience on-the-job: picking up where another developer left off (e.g. a “legacy” project), and thereby inheriting some of their code’s quirks and foibles. It is not your job to fix those issues, rather focus on what this project’s deliverables are instead of fixing old stuff.
Learning Goals
- Consume an API that requires authentication
- Build some CRUD functionality for a many-to-many relationship
- Utilize at least one mocking tool for testing API consumption
- Explore and build off existing code in a legacy codebase
- Organize and refactore new code to be more maintainable
Deployment
To become more familiar with the process of releasing code, deploying this project to the Internet is a requirement. You can use either Render or Heroku, and in both cases deployment can and should be totally free. If you appear to be, or are concerned about getting charged, please reach out to an instructor.
To use Heroku, follow these instructions and don’t forget to provision a database! If you’re using Render, check out our guide here.
We highly suggest you set up your deployment before completing any endpoints! Then, throughout the project, you can deploy changes and be able to more effectively troubleshoot deployment issues.
Technical Requirements
The Technical Requirements for this project can be found here
Evaluation
Instead of a typical evaluation session with an instructor, you will be grouped together with 2-3 other students and and instructor, and you will present your applications one by one. Your cohortmates as well as your instructor will provide feedback and ask questions about your code. Evaluation and Rubric details can be found here