| __pycache__ | ||
| .venv | ||
| build/main | ||
| dist | ||
| src | ||
| .gitignore | ||
| main.py | ||
| main.spec | ||
| manufacturing.db | ||
| README.md | ||
| requirements.txt | ||
| test_export.py | ||
| test_ui_and_exports.py | ||
Mini Basic Manufacture App
A simple manufacturing application for small businesses, designed for ease of use by users 50 years and older with a modern UI.
Features
- User Authentication & Permissions: Secure login system with role-based access control
- Database Management: Supports both SQLite (default) and PostgreSQL with backup/restore/duplicate functionality
- Core Modules:
- Purchase Management
- Basic Manufacturing (simple production tracking)
- Sales Management
- Inventory Tracking
- User & Group Configuration: Admin panel for managing users and permissions
- Dashboard: Overview of key business metrics
- Excel Export: Export all data to Excel format for external analysis
- Modern UI: Clean, modern interface using customtkinter
- Cross-platform: Works on Windows, macOS, and Linux
Requirements
- Python 3.6 or higher
- SQLite (included with Python)
- Optional: PostgreSQL for production use
Installation
- Clone or download this repository
- Install the required packages:
pip install -r requirements.txt - Run the application:
python main.py
First Run
- On first run, you'll be prompted to create an admin account
- Log in with your admin credentials
- Configure database settings if needed (SQLite is default)
- Start using the application modules
Database Configuration
Admin users can configure the database connection:
- SQLite: File-based database, no additional setup required
- PostgreSQL: For production environments, requires PostgreSQL server
Database management features:
- Backup: Create a backup of the current database
- Restore: Restore from a previous backup
- Duplicate: Create a copy of the database
User Permissions
The application supports:
- Admin users: Full access to all features
- Regular users: Access based on group permissions
- User groups: Assign permissions to groups of users
Modules
Purchase
- Create and manage purchase orders
- Track supplier information
- Monitor order status
- View purchase reports with monthly charts
- Export: Export purchase orders to Excel format
Manufacturing
- Create manufacturing orders for end products
- Track production progress
- Simple workflow without complex BOM
- Export: Export manufacturing orders to Excel format
Sales
- Create and manage sales orders
- Track customer information
- Monitor order status
- View sales reports with monthly charts
- Export: Export sales orders to Excel format
Inventory
- Track product quantities
- View stock levels
- Adjust inventory manually
- Export: Export inventory data and stock movements to Excel format
Dashboard
The dashboard provides an overview of key business metrics:
- Quick stats on pending orders and low inventory
- Financial summary with revenue, costs, and profit
- Monthly sales and purchase charts
- Recent activities log
Excel Export Features
All modules support Excel export functionality:
- Purchase Orders: Export all purchase order data including suppliers, items, and status
- Manufacturing Orders: Export production orders with product details and progress
- Sales Orders: Export sales data including customers, products, and order status
- Inventory: Export current stock levels and detailed stock movement history
Exported files are saved with timestamps in the filename for easy organization.
Development
This application is built with:
- Python 3
- customtkinter for the modern GUI (replaced standard tkinter)
- SQLAlchemy for database operations
- Matplotlib for charting
- SQLite/PostgreSQL for data storage
- pandas and openpyxl for Excel export functionality
License
This project is open source and available under the MIT License.