Overview
This project is a simple web app that helps keep track of products, suppliers, and orders. I built it to learn Django while practicing how to connect a website to a database and design a clear, easy-to-use dashboard. It includes full CRUD featuresβadd, edit, deleteβand warns you when stock runs low.
Key Features
- π¦ Manage products, suppliers, and orders with full CRUD support.
- β οΈ Automatic low-stock alerts when quantities drop below set levels.
- π Dashboard summary showing recent activity and stock insights.
- π Search and filters to quickly locate specific items.
- π οΈ Simple, intuitive admin interface built with Django templates.
Design & UI Choices
I wanted the app to look clean and easy to use. The dashboard, tables, and reports all share the same simple layout so everything feels connected. Bright blue headers make each section stand out, and rounded corners with light shadows give the pages a softer look.
The goal was to make information easy to find at a glance. Tables are neatly lined up with clear headings and small icons to help identify what each column shows. Buttons like "View" and "Add" are placed where users expect them, and highlighted rows help call attention to important or recently updated items.
Project Structure
I kept the project organized by separating code, templates, and static files into different folders. This makes it easier to update parts of the app later and keeps everything neat and easy to find. Each file has a clear purposeβfor example, models.py stores the data setup, while views.py controls what shows up on each page.
Inventory_Management_System/
βββ manage.py
βββ ims_app/
β βββ models.py # Product, Supplier, Order data
β βββ views.py # Handles page logic and data flow
β βββ urls.py # App routes
β βββ templates/ # HTML templates for each view
β βββ static/ # CSS and JavaScript files
βββ ims_project/
β βββ settings.py # App and database settings
β βββ urls.py # Main URL routes
β βββ wsgi.py # Server entry point
βββ db.sqlite3 # Local database