# Simple Ride Sharing Application ## General Requirements ### Setup You're building a simple ride sharing application with the following features, where the users can - **Sign up and Login** using Open Authentication. - **Search** for rides using start and end locations. - **Book** a ride. The user must be able to see the route while booking a ride, and the estimated time required for the ride to be completed. - **Cancel** a booked ride. Note: Seed the riders(users) into the database on different locations. ## Application Requirements - Create a suitable schema with the database of your choice. - Containerize your server side application into different services so that they can be run separately in services like Fargate/K8s. - Be RESTful. - Write Unit Tests. - Have proper access control. - Maintain history of past rides for a user (passenger) and rider, along with the complete ride information (geolocation, start and end points, user and rider information). - Show the route when the user is booking the ride. - Use your own judgement for the UI/UX. - Be creative. - Do your best to implement and follow best practices, conventions and standards under all aspects. --- ### Your submission must include - Unit Tests - API Documentation - Your Postman collection - Level 2 and Level 3 C4 models - An Entity Relationship Diagram - The link to the source repository - A working containerized application - A proper `README.md` with all necessary instructions required to run the application.