# Mobile App — Flutter

**Platforms:** iOS, Android, Web, Desktop (Windows, macOS, Linux)
**Local Path:** `/Users/bshtechnologies/Documents/Eventify-frontend/`
**Version:** 1.6.1+17

---

## Tech Stack

| Layer | Technology |
|-------|-----------|
| Framework | Flutter |
| Language | Dart ^2.17.0 |
| State Management | Provider 6.1.2 |
| Maps | google_maps_flutter 2.5.0 |
| Calendar | table_calendar 3.2.0 |
| Location | geolocator 9.0.2 + geocoding 2.0.5 |
| Media | image_picker, video_player |
| Images | cached_network_image, flutter_svg |
| Storage | shared_preferences |

## Architecture

Feature-first modular structure:
```
lib/
├── core/          # API, auth, storage, utils, constants, theme
├── features/      # auth, events, gamification, reviews
├── screens/       # Mobile + desktop screen variants
└── widgets/       # Reusable components
```

## Feature Modules
- **Auth** — login, registration, session ([[02 - Features/Auth]])
- **Events** — listing, detail, booking, calendar ([[02 - Features/Events]])
- **Gamification** — EP, RP, leaderboard, achievements ([[02 - Features/Gamification]])
- **Reviews** — event reviews ([[02 - Features/Reviews]])

## Responsive Design
- `responsive_layout.dart` switches between mobile and desktop layouts
- Separate screen files for mobile vs desktop (e.g. `home_screen.dart` / `home_desktop_screen.dart`)

## Notes

## Related
- [[01 - Architecture/Overview]]
- [[03 - Screens/Screen Index]]
- [[Backend - Django]]
