This project is the final capstone for the Coursera Backend Development specialization. It includes user authentication, menu management, and booking management functionalities.
-
GET
- Show all current users: http://127.0.0.1:8000/auth/users -
POST
- Create a new user (fields: username and password): http://127.0.0.1:8000/auth/users/ -
GET
- Show user where id is 1: http://127.0.0.1:8000/auth/users/1 -
DELETE
- Delete user where id is 1: http://127.0.0.1:8000/auth/users/1
POST
- Create the token for the user whose details are sent in the body: http://127.0.0.1:8000/api-token-auth/
-
GET
- Show all menu items: http://127.0.0.1:8000/api/menu/ -
POST
- Create a new menu item (fields: title, price, inventory): http://127.0.0.1:8000/api/menu/ -
GET
- Show menu item with id 1: http://127.0.0.1:8000/api/menu/1 -
DELETE
- Delete menu item with id 1: http://127.0.0.1:8000/api/menu/1 -
PATCH
- Update the menu item data where id is 1: http://127.0.0.1:8000/api/menu/1
-
GET
- Show all bookings: http://127.0.0.1:8000/restaurant/booking/ -
POST
- Create a new booking (fields: name, no_of_guest, booking_date): http://127.0.0.1:8000/restaurant/booking/ -
GET
- Show booking with id 1: http://127.0.0.1:8000/restaurant/booking/1 -
DELETE
- Delete booking with id 1: http://127.0.0.1:8000/restaurant/booking/1 -
PATCH
- Update the booking data where id is 1: http://127.0.0.1:8000/restaurant/booking/1
To get started with this project, clone the repository and follow the installation instructions.
- Python 3.7
- Django 3.2
- Virtualenv (optional, but recommended)
- Clone the repository:
git clone https://github.com/Franklyn883/Littlelemon-capstone-project.git
cd capstone-project
-
Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate
# On Windows usevenv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Apply migrations:
python manage.py migrate
-
Create a superuser:
python manage.py createsuperuser
-
Run the server:
python manage.py runserver
-
Visit http://127.0.0.1:8000 in your browser to interact with the application.
For any questions or inquiries, please contact Frank Alimimian at [email protected].