A Streamlit-based web app for managing products, recording sales, and viewing sales history with user authentication.
- User registration and login with role-based access (
adminandbillingMember) - Product management (add, update, delete) by admins
- Sales recording with cart, GST, and discount calculations
- Sales transaction tracking and stock updates
- View sales history
- Python, Streamlit
- MySQL (database)
- bcrypt for password hashing
- dotenv for environment variable management
- Configure MySQL and create a database.
- Set environment variables in
.env: DB_HOST=your_host DB_USER=your_user DB_PASSWORD=your_password DB_NAME=your_database - Run
models.pyto create necessary database tables. - Install dependencies: pip install streamlit mysql-connector-python bcrypt python-dotenv
- Run the app: streamlit run app.py
- Admins can manage products and record sales.
- Billing members can record sales and view sales history.
- User authentication is required.
app.py: Main Streamlit app interfaceauth.py: User login and registration logicbilling.py: Sale and transaction handlinginventory.py: Product CRUD operationsdb.py: Database connection managementmodels.py: Database table creationtest_db.py: Database connection test script
Open source for educational and personal use.