3.3 KiB
3.3 KiB
Bharat ERP — AMS Phase 1
Production-ready Asset Management System for Web, Android, and iOS — the foundation for Bharat ERP.
Phase 1 Modules
- Authentication — Login, logout, OTP, JWT sessions
- Company Management — Multi-company support
- Branch Management — Branch hierarchy per company
- User Management — Employee accounts and roles
- Role & Permissions — RBAC with dynamic menu
- Dashboard — KPIs and charts
- Assets — Categories, master, allocation, maintenance, disposal, QR
- Reports — Asset register, allocation, maintenance, warranty, disposal
- Settings — Theme, branding, preferences
Tech Stack
Flutter · Riverpod · GoRouter · Dio · Freezed · Material 3 · Responsive Framework
Getting Started
Prerequisites
- Flutter SDK 3.9+
- Dart 3.9+
Setup
# Clone and enter project
cd Bharat_ERP
# Environment files are already included:
# .env.development / .env.uat / .env.production
# Install dependencies
flutter pub get
# Generate Freezed/JSON models
dart run build_runner build --delete-conflicting-outputs
Environment config
Each environment has its own entry point in lib/config/ that sets Environment.flavor.
API URL and .env file are picked automatically (see lib/core/config/environment.dart).
| Flavor | Entry point | API URL (auto) | Web base-href |
|---|---|---|---|
| dev | lib/config/main_dev.dart |
https://demo.venbait.in/api/v1 |
/ |
| uat | lib/config/main_uat.dart |
https://uat-api.bharaterp.com/api/v1 |
/ |
| prod | lib/config/main_prod.dart |
https://api.bharaterp.com/api/v1 |
/ |
Dev web uses path URLs (no index.html#). Build with --base-href / and deploy web/.htaccess for Apache/LiteSpeed SPA fallback.
Web builds
# Dev
flutter build web -t lib/config/main_dev.dart --release --base-href /
# UAT
flutter build web -t lib/config/main_uat.dart --release --base-href /
# Prod
flutter build web -t lib/config/main_prod.dart --release --base-href /
Android APK / AAB
flutter build apk --flavor dev -t lib/config/main_dev.dart --release
flutter build apk --flavor uat -t lib/config/main_uat.dart --release
flutter build apk --flavor prod -t lib/config/main_prod.dart --release
flutter build appbundle --flavor prod -t lib/config/main_prod.dart --release
iOS
flutter build ios -t lib/config/main_prod.dart --release
Local dev run
flutter run -d chrome -t lib/config/main_dev.dart --web-port=8080
flutter run --flavor dev -t lib/config/main_dev.dart
Output (web): build/web/
Project Structure
See docs/ARCHITECTURE.md for full architecture documentation.
lib/
├── core/ # Constants, network, theme, errors, utils
├── shared/ # Routes, widgets, global providers, shared models
└── modules/ # Feature modules (auth, company, assets, ...)
Roles
| Role | Description |
|---|---|
| Super Admin | Full access across all companies |
| Company Admin | Full access within assigned company |
| Asset Manager | Asset operations within company |
| Employee | View assets and own allocations |
License
Proprietary — Bharat ERP