An open API service indexing awesome lists of open source software.

https://github.com/omar-aldesi/fast-ecommerce

A robust and scalable e-commerce backend built with FastAPI, featuring real-time notifications, background task processing, and containerized deployment.
https://github.com/omar-aldesi/fast-ecommerce

docker ecommerce fastapi postgresql python rest-api

Last synced: 3 months ago
JSON representation

A robust and scalable e-commerce backend built with FastAPI, featuring real-time notifications, background task processing, and containerized deployment.

Awesome Lists containing this project

README

          

# ๐Ÿ›๏ธ FastAPI E-Commerce Backend

[![FastAPI](https://img.shields.io/badge/FastAPI-005571?style=for-the-badge&logo=fastapi)](https://fastapi.tiangolo.com/)
[![Docker](https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white)](https://www.docker.com/)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-316192?style=for-the-badge&logo=postgresql&logoColor=white)](https://www.postgresql.org/)

A robust and scalable e-commerce backend built with FastAPI, featuring real-time notifications, background task processing, and containerized deployment.

## ๐ŸŒŸ Features

- ๐Ÿ” User authentication and authorization
- ๐Ÿ›’ Product management and categorization
- ๐Ÿ“ฆ Order processing and tracking
- ๐Ÿšš Shipping integration
- ๐Ÿ’ณ Secure payment processing
- ๐Ÿ”” Real-time notifications via WebSockets
- ๐Ÿ”„ Background task processing
- ๐Ÿณ Containerized with Docker for easy deployment
- ๐ŸŒŸ REST api
- ๐ŸŒŸ Caching System

## ๐Ÿ› ๏ธ Technologies Used

- FastAPI
- PostgreSQL
- Docker
- WebSockets
- Asyncio
- Alembic (for database migrations)

## ๐Ÿš€ Getting Started

1. Clone the repository:
git clone https://github.com/your-username/fast-ecommerce.git
cd fast-ecommerce

2. Set up environment variables:
Edit the `.env` file with your configuration.

3. Build and run the Docker containers:
docker-compose up --build

4. Access the API documentation at:
`http://localhost:8000/docs` / `http://localhost:8000/redoc/` / `http://localhost:8000/rapidoc`

## ๐Ÿ“š API Documentation

Our API provides comprehensive endpoints for managing all aspects of the e-commerce platform:

- ๐Ÿ‘ค User Management
- ๐Ÿท๏ธ Product Catalog
- ๐Ÿ›’ Shopping Cart
- ๐Ÿ“ฆ Order Processing
- ๐Ÿšš Shipping
- ๐Ÿ’ฐ Payment Integration
- ๐Ÿ”” Real-time Notifications

For detailed API documentation, please refer to the Swagger UI at `/docs` or ReDoc at `/redoc` when running the application.

## ๐Ÿ”ง Development

To run the application in development mode:

1. Install dependencies:
pip install -r requirements.txt

2. Run the FastAPI server:
uvicorn main:app --reload

3. For database migrations:
alembic upgrade head

## ๐Ÿงช Testing

Run tests using pytest:
pytest

## ๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## ๐Ÿ“„ License

This project is licensed under the MIT License .

## ๐Ÿ“ž Contact

For any queries or support, please open an issue or contact [omar.desi.100@gmail.com].

---

Happy coding! ๐Ÿš€โœจ