GitHunt
MD

MDF05/store-MGT

A modern, full-stack Store Management System featuring a glassmorphism UI, real-time analytics, and a seamless POS interface. Built with Vue.js 3 and Flask.

Store Management System

Project Status
License
Version

๐Ÿ“– Product Overview

The Store Management System is a robust, full-stack application designed to streamline retail operations. It bridges the gap between inventory control and point-of-sale efficiency, offering a seamless experience for store managers and cashiers.

Built with a focus on modern user experience (UX) and data-driven decision-making, this system allows businesses to track stock in real-time, process sales quickly, and gain actionable insights through an interactive analytics dashboard.

Key Features

  • ๐Ÿ“ฆ Smart Inventory Management: effortless addition, updating, and categorization of products.
  • ๐Ÿ›’ Point of Sale (POS) Terminal: A responsive, intuitive interface for processing customer orders instantly.
  • ๐Ÿ“Š Real-Time Analytics: Visual dashboards displaying daily revenue, top-selling products, and sales trends.
  • ๐ŸŽจ Premium UI/UX: A dark-themed, glassmorphism-inspired design that is both aesthetic and functional.
  • ๐Ÿ” Secure & Scalable: built on a solid Flask backend with SQLAlchemy ORM for reliability.

๐Ÿ—๏ธ Architecture & Tech Stack

This project follows a modern Client-Server Architecture, separating the frontend presentation layer from the backend logic and database.

Frontend (Client)

  • Framework: Vue.js 3 (Composition API)
  • Build Tool: Vite
  • State Management: Pinia
  • Routing: Vue Router
  • Sytling: Vanilla CSS (Custom Variables & Glassmorphism)
  • Visualization: Chart.js (via vue-chartjs)

Backend (Server)

  • Framework: Flask
  • Database: SQLite (Development) / PostgreSQL (Production ready)
  • ORM: SQLAlchemy
  • Data Analysis: Pandas (for complex report generation)
  • Authentication: JWT (JSON Web Tokens)

๐Ÿ“‚ Project Structure

Store-Manajemen/
โ”œโ”€โ”€ backend/                # Flask API Server
โ”‚   โ”œโ”€โ”€ instance/           # Database constraints (SQLite file)
โ”‚   โ”œโ”€โ”€ routes/             # API Endpoints (Blueprints)
โ”‚   โ”œโ”€โ”€ app.py              # Application Entry Point
โ”‚   โ”œโ”€โ”€ models.py           # Database Schema (SQLAlchemy Models)
โ”‚   โ””โ”€โ”€ requirements.txt    # Python Dependencies
โ”œโ”€โ”€ frontend/               # Vue.js Client Application
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ components/     # Reusable UI Components
โ”‚   โ”‚   โ”œโ”€โ”€ views/          # Page Views (Dashboard, POS, Inventory)
โ”‚   โ”‚   โ”œโ”€โ”€ stores/         # Pinia State Stores
โ”‚   โ”‚   โ””โ”€โ”€ assets/         # CSS, Images, Icons
โ”‚   โ””โ”€โ”€ package.json        # Node.js Dependencies
โ”œโ”€โ”€ README.md               # Project Documentation
โ””โ”€โ”€ CONTRIBUTING.md         # Contribution Guidelines

๐Ÿš€ Getting Started

Follow these steps to set up the project locally.

Prerequisites

  • Python (v3.9 or higher)
  • Node.js (v18 or higher)
  • npm (v9 or higher)

1. Backend Setup

Initialize the server first to handle API requests.

# Navigate to backend directory
cd backend

# Create a virtual environment
python -m venv venv

# Activate virtual environment
# Windows:
.\venv\Scripts\activate
# Mac/Linux:
source venv/bin/activate

# Install Python dependencies
pip install -r requirements.txt

# Seed the database with initial data
python seed.py

# Start the development server
python app.py

Server runs at: http://localhost:5000

2. Frontend Setup

Launch the user interface.

# Open a new terminal and navigate to frontend directory
cd frontend

# Install Node.js dependencies
npm install

# Start the Vite development server
npm run dev

Application runs at: http://localhost:5173


๐ŸŽฎ Usage

Once both the backend and frontend are running:

  1. Dashboard: Navigate to http://localhost:5173/ to view the sales overview.
  2. Inventory: Click on the "Inventory" tab to manage your products. You can add new items, update prices, or remove stock.
  3. POS Terminal: Go to the "Point of Sale" section to process customer orders. Select items, review the cart, and checkout.

๐Ÿ” Environment Variables

The backend relies on environment variables for configuration. Create a .env file in the backend/ directory:

SECRET_KEY=your_super_secret_key_change_this
SQLALCHEMY_DATABASE_URI=sqlite:///store.db

See backend/README.md for more detailed configuration options.


๐Ÿ“ธ Screenshots

(Placeholder for screenshots of the Dashboard, Inventory Page, and POS Interface)


โœ๏ธ Author

Your Name


๐Ÿค Contributing

We welcome contributions! Please see CONTRIBUTING.md for details on how to get started.

๐Ÿ“„ License

This project is open-source and available under the MIT License.

MDF05/store-MGT | GitHunt