Skip to content

Abdur-rahmaanJ/shopcube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

609 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

First Timers Only

๐Ÿ‡ฒ๐Ÿ‡บ ๐Ÿ‡ต๐Ÿ‡ฐ ๐Ÿ‡ณ๐Ÿ‡ฌ ๐Ÿ‡ฎ๐Ÿ‡ณ ๐Ÿ‡ป๐Ÿ‡ณ ๐Ÿ‡ฌ๐Ÿ‡ญ ๐Ÿ‡ฌ๐Ÿ‡ง

Discord CodeQL

ShopCube

ShopCube is a high-performance, minimalist e-commerce and POS solution. Designed for clarity, speed, and ease of use.

Installation

1. Install via PyPI

You can install ShopCube directly into your virtual environment without cloning the repository.

python3 -m venv venv
source venv/bin/activate
pip install shopcube

2. Initialise Workspace

Once installed, use the shopcube command to set up your database and assets in your current directory.

shopcube initialise

3. Run Locally

Launch the development server directly from the CLI.

shopcube run

Access the dashboard at http://127.0.0.1:5000/dashboard

  • Email: admin@admin.com
  • Password: admin

Production Deployment

When installed via pip, you can deploy using Gunicorn by referencing the internal WSGI entry point.

Running with Gunicorn

pip install gunicorn
gunicorn --bind 0.0.0.0:8000 shopcube.wsgi:application

Advanced Usage

Custom Project Directory

If you want to create a full editable copy of the shopcube source in a specific folder:

shopcube create my_store
cd my_store
# You now have the full source code and templates to customize

Environment Variables

Configure your production environment:

Variable Description Default
SHOPCUBE_CONFIG Environment type (production, development, testing) production
SECRET_KEY Secret key for session encryption Required
SHOPCUBE_DATA_DIR Directory for database and uploads Current Directory

Designed with precision for the modern shop.

Features

Inventory Management

  • Product catalog with barcode, images, colors, sizes, categories, and subcategories
  • Low-stock alerts โ€” configurable min_stock threshold per product; visual badge in POS
  • Stock adjustments with reason codes โ€” audit trail for all stock changes (manual edit, POS sale, return, count, PO receive)
  • Purchase Orders โ€” full PO lifecycle (draft โ†’ ordered โ†’ received); vendor-linked; auto-updates stock on receipt
  • Vendor/Supplier management โ€” CRUD with contact info; link products to vendors
  • Physical inventory counts โ€” generate count sheets; record actual qty; auto-apply variances
  • Multi-location inventory โ€” warehouses/stores with location management
  • Stock transfers โ€” move inventory between locations with draft โ†’ complete โ†’ receive workflow
  • Kit/Bundle management โ€” assemble products from components; track component stock
  • Barcode label printing โ€” print-ready label sheets
  • Cost price & margin tracking โ€” per-product cost tracking; potential margin reports
  • Inventory reports โ€” valuation at cost and retail; low-stock and out-of-stock views; per-product margin table

Point of Sale (POS)

  • Intuitive grid layout with category filtering, search, and barcode scanning
  • Cart management with quantity controls, line-item display, and running total
  • Discount at POS โ€” percentage or fixed amount; server-side validated
  • Order notes โ€” optional text memo attached to each transaction
  • Payment method selector โ€” Cash, Card, Other
  • Change calculation โ€” auto-computed from amount received
  • Quick keys / Speed buttons โ€” assign products to numbered grid positions for one-tap add
  • Transaction history with full audit trail
  • Sales reports โ€” date-filtered summaries by total, transaction count, and payment method
  • Cashier performance โ€” per-cashier transaction counts
  • Tax summary โ€” estimated tax on reportable sales
  • Return with receipt lookup โ€” search by receipt number; reverses stock
  • Shift management โ€” open/close workflow; tracks starting cash, expected vs actual, variance
  • Low-stock visual warning โ€” gold border + quantity badge in product grid
  • Cashier role โ€” non-admin staff can access POS via cashier role assignment

Customer Management

  • Customer accounts with registration, email confirmation, login/logout
  • Order history โ€” per-customer view of past orders
  • Customer groups/tiers โ€” configurable groups with % discount
  • Customer Lifetime Value (CLV) โ€” total spent, order count, average order value, last purchase date

Admin Dashboard

  • Product CRUD โ€” add/edit/delete with images, colors, sizes, vendor assignment
  • Category management โ€” hierarchical categories and subcategories
  • Coupon management โ€” configurable discount coupons
  • Delivery & Payment options โ€” configure available methods
  • Order management โ€” status tracking (pending โ†’ processing โ†’ shipped โ†’ cancelled/refunded); email notifications
  • Bulk product upload โ€” via Excel spreadsheet
  • Role-based access โ€” @admin_required on all management routes

Security

  • CSRF protection on all POST routes
  • Admin-only access enforced via admin_required decorator
  • Login required for all management endpoints
  • File upload validation โ€” type and size restrictions
  • SQLAlchemy ORM with parameterized queries (no raw SQL)

Modular Architecture

  • Built on Shopyo framework
  • Fully isolated modules (box__ecommerce/*) with independent models, views, and templates
  • Event-driven inter-module communication
  • Extensible โ€” add custom modules via shopyo startapp

About

๐Ÿ›’ POS & ecommerce solution for Shops. (Woo-commerce for Python) Complete with cart and wishlist.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Sponsor this project

Contributors