RecipeShare is a Flutter monorepo with:
- a mobile app for end users (
iOS/Android) - a web admin panel for managing platform content
- a shared Dart package used by both apps
The project is designed to work with a REST backend (currently mixed mock + HTTP services depending on feature area).
- Backend team: understand expected API shape and how frontend integration is wired.
- New contributors: run mobile/admin quickly on local machines.
recipeshare/apps/mobile- mobile app entrypointrecipeshare/apps/admin- admin web app entrypointrecipeshare/packages/shared- shared models, services, theme, and widgets
- The frontend keeps service interfaces in
packages/shared/lib/services. - Some modules already use HTTP services (for example auth and admin catalog endpoints).
- Other areas may still use mock data/services while backend endpoints are being finalized.
- App startup wires dependencies from
main.dart(mock vs API setup).
For backend contract context, also review:
recipeshare/packages/shared/lib/mock_data/recipeshare/packages/shared/lib/models/
Install these tools first:
- Flutter SDK (stable channel): https://docs.flutter.dev/get-started/install
- Git
- Chrome (for Flutter web admin)
- Android Studio (Android SDK + emulator) and/or Xcode (for iOS on macOS)
Then verify setup:
flutter doctor
flutter --versionFrom repo root:
git clone <your-repo-url>
cd frontend-RecipeShareInstall dependencies for each package:
cd recipeshare/packages/shared
flutter pub get
cd ../../apps/mobile
flutter pub get
cd ../admin
flutter pub getList available devices:
flutter devicesList configured emulators:
flutter emulatorsLaunch an emulator:
flutter emulators --launch <emulator_id>If no Android emulator is available, create one in Android Studio:
Tools->Device Manager->Create device
cd recipeshare/apps/mobile
flutter runRun on a specific device:
flutter run -d <device_id>cd recipeshare/apps/admin
flutter run -d chromeFrom each app/package directory:
flutter pub get
dart analyze
flutter testBuild artifacts:
# Mobile APK (debug)
cd recipeshare/apps/mobile
flutter build apk --debug
# Admin web build
cd ../admin
flutter build webEach app has api_config.dart for API endpoint selection.
Set backend URL there (or through the mechanism already used in that file) when testing against real APIs.
- CI workflow lives in
.github/workflows/build.yml. - Sonar configuration is in
sonar-project.properties. - Source scanning includes:
recipeshare/apps/mobile/librecipeshare/apps/admin/librecipeshare/packages/shared/lib
-
No pubspec.yaml file found
Run Flutter commands from the correct package folder (apps/mobile,apps/admin, orpackages/shared), not always from repo root. -
Device not detected
Runflutter doctorand resolve platform-specific warnings. -
Web run issues
Ensure Chrome is installed and visible influtter devices.You can enjoy demo on the link