How mohsenbahaj/crossroad works
Crossroads is a Flutter media and community app. Its documented user journey begins with onboarding or authentication, then reaches media discovery, episode details and playback; users can also explore mentors and team members, manage a cart and checkout, and maintain profile and address information. The tree shows feature-specific screens, controllers and repositories, while the README documents Firebase services, GetX, connectivity monitoring and local storage. Sampled source is platform-runner boilerplate rather than Dart runtime code, so links between feature layers and specific backend services are limited to documented capabilities and are not inferred from naming alone.
Main entry points: services.dart App services · main.dart Dart entry · screens Login and signup · controllers Auth controllers
Components 27
App entry
- Dart entry
lib/main.dart - App root
lib/app.dart
Identity
- Onboarding
lib/features/authentication/screens/onboarding/onboarding.dart - Login and signup
lib/features/authentication/screens - Auth controllers
lib/features/authentication/controllers - Authentication repository
lib/data/repositories/authentication/authentication_repo.dart
Media discovery
- Home and browse
lib/features/crossroad/screens/home/home.dart - Search
lib/features/crossroad/screens/browse/search.dart - Episode details
lib/features/crossroad/screens/episode_details/product_details.dart - Video playback
lib/common/widgets/video_display/video_display_widget.dart - Episode controller
lib/features/crossroad/controllers/video_controller.dart - Episode repository
lib/data/repositories/episode/episoderepo.dart - Mentors and teams
lib/features/crossroad/screens/crossroadpage/crossroadpage.dart - Mentor repository
lib/data/repositories/crossroad/mentor_repo.dart
Commerce
Account and services
- Profile and settings
lib/features/personalization/screens/profile/profile.dart - Address management
lib/features/personalization/screens/address/address.dart - User repository
lib/data/repositories/user/user_repositry.dart - App services
lib/features/services/services.dart - Local storage
lib/utils/local_storage/storage_utility.dart - Connectivity monitor
lib/data/services/network_manager.dart
Other components
- App user
- Firebase Auth
- Cloud Firestore
- Firebase Storage
- Push notifications
Connections 20
- App user → Dart entry: launches
- Dart entry → App root: starts
- App user → Onboarding: begins onboarding
- App user → Login and signup: authenticates
- Login and signup → Auth controllers: uses
- Auth controllers → Authentication repository: delegates
- Authentication repository → Firebase Auth: authenticates with
- App user → Home and browse: discovers media
- App user → Search: searches
- App user → Episode details: opens episode
- Episode details → Video playback: plays
- App user → Mentors and teams: explores community
- App user → Cart: manages items
- App user → Checkout: checks out
- App user → Profile and settings: manages account
- App user → Address management: manages addresses
- App services → Push notifications: supports alerts
- App services → Firebase Storage: uses
- App services → Connectivity monitor: monitors
- App services → Local storage: uses