The central entrypoint for the Crewmeister application. This Flutter app ties together all internal packages—including absence_manager as the feature module and crewmeister_core for shared utilities—to deliver a modular, high-performance, and well-architected solution.
Please use chrome for better compatibility.
Hosted via GitHub Pages, built with flutter build web --base-href=/crewmeister_app/
- Go to: Actions tab
- Click latest run of Build & Deploy APK + Web
- Download
crewmeister_app_apkunder Artifacts
This repo uses GitHub Actions to:
- ✅ Build & upload release APK as artifact
- ✅ Build and deploy the web version to GitHub Pages
- ✅ Run tests and validate formatting/lints
crewmeister_app/
├── bootstrap.dart # Entry bootstrap logic with environment setup
├── crewmeister_app.dart # Root widget of the app
├── environment_config.dart # Environment-specific configurations
├── main.dart # Main file for launching the app
├── service_locator.dart # Dependency injection setup- Flutter SDK (>=3.29.3)
- Dart SDK (>=3.7.2)
absence_manager_api– for running locally, see: absence_manager_api GitHub
# Clone the repo
git clone https://github.com/your-org/crewmeister.git
cd crewmeister
# Install dependencies
flutter pub get
# or run the script if available
./build_runner.shYou can run the app using VS Code’s launch config or via CLI:
flutter run -t lib/main.dart --dart-define=BASE_URL=https://absence-manager-api-4245.onrender.com{
"version": "0.2.0",
"configurations": [
{
"name": "crewmeister_app",
"request": "launch",
"type": "dart",
"program": "lib/main.dart",
"args": [
"--dart-define=BASE_URL=https://absence-manager-api-4245.onrender.com",
"--web-browser-flag=--disable-web-security"
]
}
]
}flutter test✅ 100% coverage for core business logic
🧪 Tests are located in absence_manager and crewmeister_core
This app depends on the following packages:
absence_manager– Absence management logic, including pages, components, state management, and API integrationcrewmeister_core– Shared utilities, design system, theme, and network layerabsence_manager_api– Dart Frog backend for serving absence data
- Cleanly separated concerns via modular packages
- Uses
GetItfor dependency injection - Applies
GoogleFonts.poppinsand Material3 theming - Tested state management using
bloc_test - Member name mapping with absences handled on server side
- Lint rules
- Zero dart analyze issues.
- Test cases
- Githooks - missing
- PR rules - missing
- Light & Dark theme support, App changes theme as per device theme
- 100% coverage unit test for business logic
- Updated mock data to 2025 to be more relevant for testing or demo
- Add pre-push git hook for test & lint
- Enforce PR-based branch protection
- CI badge + version badge
- Changelog file and tag-based release notes

