This project is an API built using Django REST Framework for the Little Lemon restaurant. The API handles table bookings and menu items for the restaurant.
The project is built as part of the Back-End Developer Capstone course on Coursera.
To run this project, you will need to have Python 3 and MySQL installed on your machine. You can then follow these steps:
- Clone the repository to your local machine using
git clone. - Install pipenv using pip:
pip install pipenv. - Run
pipenv installto create a virtual environment and install the required packages. - Create a MySQL database and update the
DATABASESsetting insettings.pywith your database details. - Run the migrations using
python manage.py migrate. - Start the development server using
python manage.py runserver.
The API has the following endpoints:
/auth/users/: User registration API/restaurant/api-token-auth/: Token authorization API/restaurant/menu/: Menu items API/restaurant/booking/tables/: Table booking API
The API supports HTTP requests such as GET, POST, PUT and DELETE. The data is stored in a MySQL database using Django models.
The API can be tested using the Insomnia REST client. Unit tests are also included in the project.
This project will be peer reviewed by two of your peers in the course. The grading criteria include:
- Use of Django to serve static HTML content
- Committing the project to a Git repository
- Connecting the backend to a MySQL database
- Implementation of the menu and table booking APIs
- User registration and authentication
- Unit tests
- Ability to test the API using the Insomnia REST client.