A simple REST API with a MySQL database that will serve as the backend for a future photo app. A user should only be able to view their own albums and photos, and can only add their own photos to their own albums.
- Follow best practices
- Follow REST principles
- Use MVC structure
- Use Bookshelf as the ORM
- Authentication via HTTP Basic
- Password hashing/salting using bcrypt
- Validation of all data a user can submit
- All responses should be wrapped according to the JSend specification
- All requests and responses should follow the specified structure for each endpoint
- Error handling (e.g., if a user tries to access another user's albums or photos, or if a user tries to add a photo that does not belong to them to an album, or add a photo to a non-existent album)
- Use correct HTTP status codes
- Version control using Git
- All source code should be correctly indented
- Deployed to Heroku