Skip to content

Implementation of an online store based on Antonio Mele's book 'Django 4 by Example' using FastAPI and mongodb with custom admin page + containerization using docker-compose.

Notifications You must be signed in to change notification settings

sammyjankins/fastapi_shop

Repository files navigation

fastapi_shop

Implementation of an online store based on Antonio Mele's book 'Django 4 by Example' using FastAPI and MongoDB, containerized using Docker Compose.

image

Instructions for building and launching the service

Dependencies

Make sure you have the following tools installed:

Running the Project

  1. Clone the repository:
git clone https://github.com/sammyjankins/fastapi_shop.git
  1. Go to the project directory:
cd fastapi_shop
  1. Fill the .env.project and .env.mongo files with actual data following .env.project.template and .env.mongo.template.

  2. Build and start the containers:

docker-compose up -d

Admin user will be created automatically. Credentials will be taken from the .env.project file.

  1. Check that the containers are running:
docker ps

Using the Project

Open the application in your browser:

http://localhost:80/

Log in to the admin panel using the credentials created in step 5:

http://localhost:80/admin/

Using the admin panel you can perform CRUD operations:

image

image

image

Features

Coupon System

Using the admin panel you can create and manage discount coupons. Discount information will be stored in the order data.

image

image

Email notifications

The application sends email notifications that indicate the creation of an order and payment notifications that contain an invoice in PDF format. This functionality is implemented using Сelery and RabbitMQ.

image

invoice

Recommendations

The application has a recommendation system. This functionality is implemented using Redis.

image

Stripe

The application uses Stripe as a payment system.

image

About

Implementation of an online store based on Antonio Mele's book 'Django 4 by Example' using FastAPI and mongodb with custom admin page + containerization using docker-compose.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published