Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

SoftGeekRO/sg.webshop

Repository files navigation

πŸ›οΈ SoftGeek Online Store

License Python Django Code Style Size Build Issues softgeek.ro progeek.ro

An advanced e-commerce web application for SoftGeek, built with Django, Webpack, MySQL/MariaDB, and modern frontend tools.


🧱 Stack Overview

Technology Purpose
Django Python web framework for backend logic
MariaDB Reliable and performant SQL database
Webpack Asset bundler for JavaScript/CSS
SCSS Professional grade CSS extension language
JavaScript Interactive frontend
Nginx Reverse proxy and static file serving

πŸš€ Features

  • Product catalog with categories, filters, and search
  • Cart and checkout system
  • Customer authentication and registration
  • Order management dashboard (Admin)
  • Multi-language and multi-currency support
  • Dynamic frontend assets via Webpack
  • Page-level and object caching
  • Django admin panel for managing inventory and multistore settings
  • REST API support for mobile/third-party apps

πŸ“‚ Project Structure

/backend
  /core             # Django project settings
  /shop             # E-commerce app logic
  /users            # Custom user auth
  /orders           # Order management
  /api              # REST API
/frontend
  /src              # JavaScript/SCSS entry points
  /dist             # Webpack output (auto-generated)
/static             # Static files served by Nginx
/media              # Uploaded media files
/venv               # Python virtual environment
.env                # Environment config
manage.py           # Django CLI
webpack.config.js   # Webpack config

βš™οΈ Requirements

  • Python >= 3.12
  • pip >= 24.x
  • Django >= 5.0
  • Node.js >= 22.15.x + NPM >= 10.9.x
  • webpack >= 5.99
  • SASS >= 1.89.0
  • MariaDB >= 11.7.2 || MySQL >= 8.0
  • Nginx >= 1.24

πŸ”§ Setup Instructions

1. Clone the Repository

git clone https://github.com/SoftGeekRO/sg.webshop.git
cd sg.webShop

2. Setup Python Virtual Environment

python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt

3. Setup Environment

Copy .env.example to .env and update your environment variables:

cp .env.example .env

4. Run Migrations

python manage.py migrate

5. Create Superuser

python manage.py createsuperuser

6. Start Development Server

python manage.py runserver

7. Build Frontend Assets

cd frontend
npm install
npm run dev

πŸ› οΈ Development Path

πŸ“Œ Phase 1: Core Setup

  • Setup Django with modular apps
  • Configure database and models (products, categories, users, orders)
  • Integrate Webpack + asset manifest loading
  • Basic frontend templates using Django
  • Admin configuration and permissions

πŸ“Œ Phase 2: Features & Logic

  • Implement online/offline mode
  • Implement user registration/login
  • Import products from CSV, XLS, XML, feeds
  • Product listing with filters and search
  • Shopping cart and checkout flow
  • Admin dashboard for orders and inventory
  • Multistore and vendor support
  • Email notifications for orders and signups

πŸ“Œ Phase 3: Optimization

  • Enable template and query caching
  • Webpack production builds with asset versioning
  • Add image compression and CDN support (optional)
  • Internationalization and localization (i18n)

πŸ“Œ Phase 4: Testing & Launch

  • Write unit and integration tests
  • Perform SEO audit and optimizations
  • Deploy to VPS with Nginx + Gunicorn
  • Set up log monitoring and performance tracking

πŸ‘¨β€πŸ’» Contributing

Pull requests are welcome. Please fork the repo and use a feature branch. Ensure code style and tests pass before submitting:

black .
flake8
pytest
npm run lint

πŸ“„ License

This project is licensed under the MIT License.


🧠 About SoftGeek

SoftGeek is a modern tech company focused on smart digital products and automation. Visit us at https://softgeek.ro