Skip to content

A inventory management system to manage and track inventory level status of products. Built using MVT architecture in Django, python.

Notifications You must be signed in to change notification settings

SebastianBenjamin/StockManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StockManager

Python Django PostgreSQL

Note: This is my first Django project.
I created StockManager to learn the Django framework and experiment with fundamental web development concepts, including models, views, templates, authentication, and integration of a relational database.


🚀 Features

  • Product Catalog: Add, update, and delete products with details like name, SKU, quantity, and price.
  • Inventory Tracking: Maintain accurate stock levels with real-time updates.
  • Purchase & Sales Management: Record and monitor stock inflows and outflows.
  • Search & Filter: Quickly locate products using search bars and advanced filters.
  • Data Persistence: All data is securely stored in an integrated PostgreSQl database.
  • User-Friendly Interface: Easily navigate via Django’s default admin UI and responsive single-page interface.
  • Extensible Design: Easily add more fields, integrate with APIs, or expand the feature set as you learn more.

📸 Screenshots

Dashboard Screenshot
Inventory Screenshot

Architecture

StockManager follows conventional Django project structuring:

StockManager/
│
├── inventory/         # Contains inventory app logic, models, views, templates
├── stockmanager/      # Django project settings and config files
├── db.sqlite3         # SQLite local database file (generated after migrations)
├── manage.py          # Django’s management script
└── screenshots/       # (Optional) App screenshots and images
  • Models: Define data structures for products, categories, and transactions.
  • Views: Handle user interactions, CRUD operations, and route data to templates.
  • Templates: Render HTML interfaces for users and admins.
  • Admin: Default Django admin for backend management.

📝 Usage

Prerequisites

  • Python 3.x
  • Django 3.x or above

Local Setup

  1. Clone the repository:
    git clone https://github.com/SebastianBenjamin/StockManager.git
    cd StockManager
  2. Install Django dependencies:
    pip install django
  3. Apply database migrations:
    python manage.py migrate
  4. Create an admin user (optional, for Django admin panel):
    python manage.py createsuperuser
  5. Start the development server:
    python manage.py runserver
  6. Access the web app by opening:
    http://127.0.0.1:8000/ in your browser.

Django Admin

Navigate to /admin and log in with your superuser account to manage inventory, entries, and transactions.


⚡ Customization

  • Models: Add fields or new models by editing inventory/models.py.
  • Templates: Modify HTML/CSS in inventory/templates/.
  • Views: Expand logic in inventory/views.py.
  • Static Files: Add images, JavaScript, or CSS in the appropriate static folder for advanced styling.

🛠 Tech Stack

  • Language: Python
  • Framework: Django
  • Database: PostgreSQL
  • Frontend: HTML, CSS templates (Single-page app architecture)

🤝 Community & Contributions

I'm learning and welcome feedback!

  • Open issues for bugs, feature requests, or code suggestions.
  • Fork the repository and open pull requests for improvements.
  • Share ideas or discuss possible enhancements.

📄 License

This project is licensed under the MIT License.


✨ Acknowledgments

  • Django documentation and tutorials for guidance.
  • Open source libraries and the helpful programming community.

Interested users and contributors are very welcome—the project and its documentation will improve as I deepen my Django expertise!


About

A inventory management system to manage and track inventory level status of products. Built using MVT architecture in Django, python.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published