How jpromi/fire-where works
Fire Where is a mobile app for viewing public fire-service incidents across much of Austria, with fire-department profiles, regional and district browsing, incident details, and configurable preferences. The main workflow is browsing incidents and opening their details; the app also exposes department-specific incident history and favourites/settings, while an iOS widget presents an operation list. The README identifies Operation Point as the data origin. Some screen and widget implementations were not excerpted, so their links to services are shown as unverified rather than asserted.
Main entry points: FiredepartmentService.ts Department queries · OperationService.ts Incident queries · ApiClient.ts API client · index.tsx Incident browsing
Components 22
App experience
- App shell
app/_layout.tsx - Incident browsing
app/(tabs)/operation/index.tsx - Regional browsing
app/(tabs)/operation/[federalStateId]/[districtId].tsx - Incident details
app/(tabs)/operation/details/[uuid].tsx - Department search
app/(tabs)/firedepartment/index.tsx - Department profile
app/(tabs)/firedepartment/[uuid]/index.tsx - Department incidents
app/(tabs)/firedepartment/[uuid]/operation.tsx - Settings screens
app/(tabs)/settings/index.tsx
Incident domain
- Operation model
models/Operation.ts - Incident presentation
services/local/OperationVariablesService.ts
Data and preferences
- Department queries
services/FiredepartmentService.ts - Incident queries
services/OperationService.ts - Service status
services/ServiceService.ts - API client
services/ApiClient.ts - Favourites
services/local/FavouritesService.ts - Settings storage
services/local/SettingService.ts - Settings cache
services/local/SettingLocalService.ts
iOS widget
- Operation list widget
ios/OperationListWidget/OperationListWidget.swift - iOS incident queries
ios/Shared/Networking/OperationService.swift - iOS API client
ios/Shared/Networking/ApiClient.swift
Other components
- App user
- Operation Point API
Connections 17
- App user → App shell: opens app
- App shell → Incident browsing: routes to
- App user → Incident browsing: browses incidents
- Incident browsing → Incident queries: requests incidents
- Regional browsing → Incident queries: requests region
- Incident details → Incident queries: loads incident
- Department search → Department queries: searches departments
- Department profile → Department queries: loads department
- Department incidents → Department queries: loads incidents
- Settings screens → Settings storage: reads settings
app/(tabs)/settings/index.tsx - Incident queries → API client: sends requests
services/OperationService.ts - Department queries → API client: sends requests
services/FiredepartmentService.ts - Service status → API client: sends requests
services/ServiceService.ts - API client → Operation Point API: fetches data
README.md - Settings storage → Settings cache: updates cache
services/local/SettingService.ts - Operation list widget → iOS incident queries: loads operation list
ios/OperationListWidget/OperationListWidget.swift - iOS incident queries → iOS API client: requests operations
ios/Shared/Networking/OperationService.swift