Simple Django Admin Panel for Online Store Management

This project aims to develop a simple Django admin panel for managing the content of an online store with multi-role support. The admin panel allows administrators to efficiently manage shops, products, categories, and administrative roles.

Stacks:

The project is built using the following technologies:

  • Django 5.0.3
  • django-better-admin-arrayfield 1.4.2
  • django-js-asset 2.2.0
  • django-mptt 0.16.0
  • asgiref 3.8.1
  • pillow 10.3.0
  • psycopg2-binary 2.9.9
  • sqlparse 0.4.4
  • typing_extensions 4.10.0

Features:

  • Shop Administration:
    • Navigate through the list of shops.
    • Search shops by title.
    • Edit shop details except for the shop ID.
    • Upload images as shop pictures.
  • Product Administration:
    • Navigate through the list of products.
    • Search products by ID or title.
    • Edit product details except for the product ID.
    • Display the first image as the main image in both list and product view.
    • Sort products by the number of orders and price.
    • Filter products by active flag and price range.
    • Attach products to one or more categories.
  • Category Administration:
    • Navigate through the list of categories.
    • Search categories by product ID, title, and parent category.
    • Add one or more parent categories to a category.
    • Display all possible paths to the chosen category.
  • Management:
    • Define at least two administrative roles:
      • Moderation for products.
      • Moderation for all available pages.

Additional Functionalities:

  • Extensive documentation provided for better understanding and usage of the admin panel.
  • Customizable user interface to enhance user experience.
  • Integration with authentication systems for secure access.
  • Support for multiple languages and internationalization.
  • Implementation of data validation and error handling mechanisms.
  • Compatibility with various databases for flexible deployment options.

How to Use:

  1. Fork or clone this repository.
  2. Set up the Django environment and install requirements.txt
  3. Configure database settings according to your preference.
  4. Here you are!