BigCorp is a modern e-commerce platform built with Django, featuring integrated payment solutions, a REST API, and a background task system using Celery and Redis.
- 🔐 User Authentication (registration, login, password reset)
- 🏷 Product Management (discounts, recommendations, and admin panel)
- 🛍 Shopping Cart & Checkout (with Stripe and YooKassa integration)
- 📦 Order Processing (including PDF invoices and CSV export)
- 🌍 REST API (built with Django REST Framework, Swagger, and Redoc)
- ⚡ Background Tasks (Celery + Redis for async operations)
- 🎭 HTMX for Dynamic UI Updates
- 🤖 GitHub Actions CI/CD with Telegram Notifications
- 🐳 Dockerized Environment (PostgreSQL, Redis, Celery, Web App, Nginx)
- 🌐 All Requests Pass Through Nginx for load balancing and security
- 🐳 Docker & Docker Compose
- 💳 Stripe CLI
git clone https://github.com/talyx/bigcorp
cd bigcorp
- Copy the example environment file:
cp .env.example .env
- Fill in required values (e.g., database credentials, Stripe keys, etc.)
docker-compose up --build -d
stripe listen --forward-to localhost/payment/webhook-stripe/
docker exec -it bigcorp-app python manage.py createsuperuser
Superuser is required to create categories in the admin panel before running the faker.
- Log in to the admin panel and create product categories.
- Run the following command to generate fake products:
docker exec -it bigcorp-app python manage.py fakeproducts
- Open
http://localhost/
in a browser.
API docs are available at:
- 📜 Swagger UI:
/api/v1/swagger/
- 📕 Redoc:
/api/v1/redoc/
- Automated deployment runs on every push to
main
. - Telegram notifications are sent upon successful deployment.
This project is written for educational purposes only.