How priyanka-codes-28/courier-and-logistics-system works
CourierOS is a Flask courier-operations application. Customers create and pay for shipments, then track shipment status; pickup and delivery agents and warehouse staff advance fulfillment, while administrators manage users and system settings. The graph shows the documented shipment, role-dashboard, tracking, notification, and authentication capabilities. Several source excerpts are partial, so uncertain route-to-feature wiring is omitted.
Main entry points: shipments.py Shipment routes · auth.py Accounts and dashboards · db.py Database access · app.py Flask app
Components 20
Web application
- Flask app
app.py - Accounts and dashboards
routes/auth.py - Shipment routes
routes/shipments.py - Web pages
templates
Shipment operations
- Shipment lifecycle
models.py - Agents and warehouses
models.py - Shipment payments
models.py - Tracking and location
routes/shipments.py - Delivery proof
models.py - System settings
models.py
Identity and messaging
- User accounts
models.py - Google sign-in
google_oauth.py - Email notifications
email_utils.py - Email templates
templates/emails
Persistence
- PostgreSQL
- Database access
db.py
Other components
- Customer
- Operations staff
- Google identity
- Brevo email API
Connections 31
- Customer → Flask app: uses
- Operations staff → Flask app: uses
- Flask app → Accounts and dashboards: registers
- Flask app → Shipment routes: registers
- Flask app → Database access: initializes
- Flask app → Google sign-in: initializes
- Accounts and dashboards → Web pages: renders
- Shipment routes → Web pages: renders
- Accounts and dashboards → User accounts: manages accounts
- Accounts and dashboards → Shipment lifecycle: loads dashboards
- Accounts and dashboards → Agents and warehouses: loads dashboards
- Accounts and dashboards → System settings: manages settings
- Accounts and dashboards → Google sign-in: starts sign-in
- Google sign-in → Google identity: authenticates
- Shipment routes → Shipment lifecycle: creates and updates
- Shipment routes → Agents and warehouses: assigns agents
- Shipment routes → Shipment payments: records payment
- Shipment routes → Tracking and location: serves tracking
- Shipment routes → Delivery proof: records proof
- Shipment routes → System settings: reads settings
- Shipment lifecycle → Email notifications: notifies status
- Email notifications → Email templates: renders
- Email notifications → Brevo email API: sends email
- User accounts → Database access: queries
- Shipment lifecycle → Database access: queries
- Agents and warehouses → Database access: queries
- Shipment payments → Database access: queries
- Tracking and location → Shipment lifecycle: reads status
- Delivery proof → Database access: stores proof
- System settings → Database access: loads and saves
- Database access → PostgreSQL: connects