How shaurya-singh6352/traceit works
TraceIt is a campus lost-and-found mobile app. A user signs in, browses a live feed of lost or found posts, filters or searches it, and can report an item with an optional photo. They can open a post to view details and contact the poster, or resolve/reopen their own post; My Posts supports tracking their reports. The README documents the Flutter screens, Provider-injected services, and Firebase responsibilities. Native platform files and unsampled Dart implementations are not mapped beyond those documented responsibilities.
Main entry points: firestore_service.dart Items data service · home_screen.dart Live feed and My Posts · main.dart App entry and routing · post_item_screen.dart Report item
Components 17
App and access
- App entry and routing
lib/main.dart - Email login
lib/screens/login_screen.dart - Material design system
lib/theme/app_theme.dart
Browse and report
- Live feed and My Posts
lib/screens/home_screen.dart - Report item
lib/screens/post_item_screen.dart - Item details and resolve
lib/screens/item_detail_screen.dart - Notice card
lib/widgets/item_card.dart - Lost/Found toggle
lib/widgets/status_toggle.dart - Empty and error state
lib/widgets/empty_state.dart
Domain and data
- Item and status model
lib/models/item_model.dart
Firebase services
- Auth service
lib/services/auth_service.dart - Firebase Auth
- Items data service
lib/services/firestore_service.dart - Cloud Firestore
- Image storage service
lib/services/storage_service.dart - Firebase Storage
Other components
- Campus user
Connections 22
- Campus user → App entry and routing: opens app
- App entry and routing → Firebase Auth: initializes Firebase
- App entry and routing → Email login: routes by auth
- Campus user → Email login: signs in
- Email login → Auth service: authenticates
- Auth service → Firebase Auth: calls
- Campus user → Live feed and My Posts: browses posts
- Live feed and My Posts → Items data service: requests feed and My Posts
- Live feed and My Posts → Lost/Found toggle: selects status
- Live feed and My Posts → Notice card: renders posts
- Live feed and My Posts → Empty and error state: shows empty or error
- Campus user → Report item: reports item
- Report item → Items data service: creates post
- Report item → Image storage service: uploads photo
- Campus user → Item details and resolve: opens post
- Item details and resolve → Items data service: loads and resolves post
- Item details and resolve → Auth service: uses poster contact
- Items data service → Cloud Firestore: queries and writes
- Cloud Firestore → Items data service: streams item data
- Items data service → Item and status model: maps item data
- Image storage service → Firebase Storage: uploads and deletes images
- Material design system → App entry and routing: styles app