A Flask-based inventory management demo built for an Odoo hackathon. This repository provides a lightweight warehouse system with product pricing, receipts, deliveries, inventory adjustments, audit logging, and role-aware user flows.
- User authentication with registration, login, logout, and profile management
- Role support for Managers and Warehouse Staff
- Product catalog with unique SKU validation, pricing, quantity tracking, and category support
- Location management for warehouses, vendors, customers, and adjustment partners
- Dashboard summaries with total asset value, inventory charts, low stock alerts, and recent activity
- Receipt creation to add stock and delivery creation to remove stock
- Stock adjustment workflow with correction records and audit tracking
- Audit log tracking for critical actions across the app
- OTP-based password reset demo flow
- API endpoints for seeding demo data and managing receipts, deliveries, and adjustments
- Enhanced product form and product table with pricing details and stock metadata
- Dashboard improvements with asset value display and chart visualizations
- Authentication flow fixes using the PRG pattern to improve form behavior and redirect handling
- Updated deployment and dependency support with
gunicorninrequirements.txt
- Python 3
- Flask
- Flask-SQLAlchemy
- SQLite
- Jinja2
- HTML/CSS templates
- Python 3.11+ recommended
pip
-
Clone the repository:
git clone https://github.com/devc2255/CoreInventorySystem_odoo_hackathon_26.git cd CoreInventorySystem_odoo_hackathon_26 -
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate -
Install dependencies:
pip install -r requirements.txt
Start the application with:
python app.pyThen open http://localhost:5000 in your browser.
Sample users, products, categories, and locations are automatically seeded on application startup.
Default seeded credentials:
- Manager:
admin@test.com/password - Warehouse Staff:
staff@test.com/password
app.py— Main Flask application containing routes, models, and business logicrequirements.txt— Python dependenciestemplates/— UI templates for pages such as dashboard, products, receipts, deliveries, and adjustmentsinstance/— runtime folder for app configuration and local state
- This app uses a demo OTP reset flow and a development-grade secret key; it is intended for demonstration and hackathon use.
- Database tables are created automatically on first run.
- For production use, replace the hard-coded secret key, secure the database, and configure a proper email service.
Provided as-is for hackathon/demo purposes.