MealMapper
MealMapper is a user-friendly webpage that allows users to log, filter, and randomly select restaurants based on their preferences, while also providing a platform to share memories and experiences related to their dining adventures.
- A user can create an account for a personalized experience.
- A user can log in to their account to have access to their saved data.
- A user can log restaurants they've visited to keep track of their dining experiences.
- A user can filter restaurants based on cuisine, neighborhood, and visitation status to narrow down their choices.
- A user can use a randomizer feature to select a restaurant based on their filters when they are feeling indecisive.
- A user can share their dining experiences by uploading photos and stories to keep a food diary.
- A user can see other users' experiences at the same restaurant to get a sense of what to expect.
- A user can edit and delete their posts to manage their content.
User Routes
- POST --> /users --> Register a new user
- POST --> /users/login --> Login an existing user
- POST --> /users/logout --> Logout the current user
Restaurant Routes
- GET --> /restaurants --> Get all restaurants
- POST --> /restaurants --> Add a new restaurant
- GET --> /restaurant/int:id --> Get a specific restaurant
- PATCH --> /restaurant/int:id --> Update a specific restaurant
- DELETE --> /restaurant/int:id --> Delete a specific restaurant
- GET --> /restaurants/random --> Get a random restaurant based on filters
User Experience Routes
- POST --> /user_experience --> Add a restaurant to a user's visited list
- DELETE --> /user_experience --> Remove a restaurant from a user's visited list
- GET --> /user_experience/memories --> Get all memories for a specific restaurant
- POST --> /user_experience/memories --> Add a new memory for a specific restaurant
- GET --> /user_experience/memories --> Get a specific memory
- PATCH --> /user_experience/memories --> Update a specific memory
- DELETE --> /user_experience/memories --> Delete a specific memory
- Implement a recommendation system: Create a recommendation system that suggests restaurants based on a user's friends list and where their friends have recently logged.
- Integrate with external APIs: Integrate with external APIs such as Google Maps for displaying restaurant locations, or Yelp for additional restaurant details and reviews.
- Implement real-time updates: Implement real-time updates that would allow users to see updates from other users in real-time, making the application more interactive.