Skip to content

magdumsuraj07/storefront

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

E-Commerce Backend Project

This is a backend project for an e-commerce site developed using Python, Django, MySQL, Django Rest Framework (DRF), Restful API, JWT (JSON Web Tokens), Redis, Celery, Pytest, Locust, and Docker.

Features

  • Create and manage products, categories, and user accounts.
  • Handle customer orders, and shopping carts.
  • Secure user authentication and authorization using JWT tokens.
  • Real-time data with Redis for caching and queuing.
  • Asynchronous task processing with Celery.
  • Comprehensive test coverage with Pytest.
  • Load testing using Locust.

Technologies Used

  • Python: Version 3.8.10
  • Django: Version 3.0.4
  • MySQL: Database system for data storage.
  • Django Rest Framework: A powerful and flexible toolkit for building Web APIs.
  • Restful API: Design principles for API development.
  • JWT (JSON Web Tokens): Used for secure user authentication.
  • Redis: For caching and message queuing.
  • Celery: Distributed task queue for background processing.
  • Pytest: Testing framework for unit and integration testing.
  • Locust: Load testing tool to evaluate system performance.
  • Docker: Containerization for easy deployment.

Usage

Installation

  1. Clone the repository: git clone https://github.com/yourusername/your-ecommerce-backend.git
  2. Create a virtual environment and activate it.
  3. Install the required dependencies: pip install -r requirements.txt
  4. Configure your database settings in settings.py.
  5. Run migrations: python manage.py migrate
  6. Start the development server: python manage.py runserver

API Endpoints

  • /api/products/: Endpoint for managing products.
  • /api/carts/: Endpoint for managing shopping carts.
  • /api/orders/: Endpoint for handling customer orders.
  • /api/auth/: Authentication and user account management.

Contribution

We welcome contributions to improve this project. If you want to contribute, follow these steps:

  1. Open an issue to discuss what you'd like to improve or add.
  2. Fork the repository.
  3. Create a new branch for your feature or bugfix.
  4. Implement your changes.
  5. Write tests for your code.
  6. Ensure all tests pass.
  7. Submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages