π¦ Download: Latest APK (Google Drive) Β· Or visit the Releases tab for versioned builds.
Mission: Make large-scale spiritual, cultural, and civic gatherings safer, more inclusive, and data-informed β without sacrificing tradition.
Mass gatherings (pilgrimages, fairs, festivals, civic events) face recurring challenges:
| Challenge | Real-World Impact |
|---|---|
| Overcrowding & congestion | Stampede risk, lost time, reduced participant comfort |
| Fragmented communication | Delayed emergency response & misinformation |
| Limited situational awareness | Organizers lack real-time density & risk visibility |
| Accessibility gaps | Elderly & differently-abled attendees lack timely assistance |
| Manual alert escalation | Slower triage of medical & safety incidents |
| Post-event blind spots | Minimal data retained for planning & policy |
SimhaLink addresses these pain points by fusing real-time geospatial data, role-aware workflows, and proactive alerting into a single Android-first platform.
SimhaLink is a Flutter + Firebase powered crowd intelligence and coordination platform featuring:
- π Live, layered maps (medical, water, accessibility, historic, emergency zones)
- π₯ Role-bound interfaces (Participants, Volunteers, Organizers, VIPs) with scoped permissions
- π¨ Structured alert & escalation funnel (report β verify β dispatch β resolve β archive)
- π¬ Context-rich group & targeted messaging (role, zone, incident-linked)
- π Push notifications & event-driven routing (Firebase Cloud Messaging)
- π°οΈ Modular architecture prepared for future AI & IoT ingestion (density, sensors, drones)
Designed to scale from a localized gathering to multi-venue pilgrimages with hundreds of thousands of participants.
Note: Screens represent in-development UI; flows and visuals may evolve.
| Pillar | Features | Impact |
|---|---|---|
| Situational Awareness | Multi-layer map, dynamic markers, role-specific overlays | Faster decision cycles |
| Safety & Response | Alert categorization (medical, crowd, infrastructure), resolution tracking | Reduced response latency |
| Communication | Group chat, broadcast messaging, role & location scoping | Cuts noise, raises clarity |
| Inclusivity | Accessibility markers (ramps, assistance points, water) | Improved attendee well-being |
| Governance | Audit-friendly event logs, structured incident lifecycle | Traceability & accountability |
| Extensibility | Modular services & managers, pluggable data providers | Low friction future integrations |
- Participant: Reports hazard or requests assistance β auto-tagged with location & type.
- Volunteer: Receives filtered tasks β acknowledges β updates status.
- Organizer: Monitors macro view (density hotspots, open incidents) β reallocates resources.
- VIP: Access to curated itinerary & safe routing overlays.
| Layer | Responsibility | Current Backing |
|---|---|---|
| UI (Flutter) | Reactive role-based widgets | Modular screens & widgets |
| Managers | Map, auth, alerts, messaging orchestration | Service abstractions |
| Services | Auth, Firestore CRUD, notifications | Firebase Auth, Firestore, FCM |
| Data Models | Marker, Alert, Role, Message | lib/models/ |
| Config | Environment, theming, map config | lib/config/ |
Horizontal Scaling Path:
- Phase 1 (Now): Firebase realtime + Firestore partitioned collections.
- Phase 2: Add Cloud Functions for rule-based auto-escalation & analytics aggregation.
- Phase 3: Introduce streaming pipeline (Pub/Sub or WebSockets) for density heatmaps.
- Phase 4: Optional migration adapter to FastAPI microservices (preserved via service abstraction layer).
Performance & Reliability Considerations:
- Batched Firestore writes for bulk marker ingestion.
- Indexed queries (geo-hash or bounding-box ready extension).
- Offline-first caching (planned) to maintain minimal map & alert interaction during outages.
- Principle of Least Privilege: Role gates enforced at UI & Firestore security rules.
- Incident Lifecycle: open β assigned β in-progress β resolved β archived.
- Messaging Separation: Operational (alerts) vs conversational (group chat) channels.
- PII Avoidance: Only minimal identity data retained client-side; extensible for anonymization.
| Dimension | Effect |
|---|---|
| Public Safety | Shorter alert-to-action windows reduce escalation risk |
| Health Outcomes | Faster volunteer dispatch improves triage success |
| Inclusivity | Improves navigation for differently-abled & vulnerable groups |
| Sustainability | Data-driven flow optimization lowers infrastructure stress |
| Policy & Planning | Post-event analytics inform zoning & resource planning |
| Cultural Continuity | Supports safer large-scale heritage gatherings |
| Stage | Focus | Highlights |
|---|---|---|
| 1. Safety Core | Stability & alerts | Offline cache, multi-language UI |
| 2. Analytics | Predictive awareness | Density heatmaps, flow prediction |
| 3. Automation | Smart orchestration | IoT ingest, auto-dispatch rules |
| 4. Expansion | Ecosystem | Web organizer console, REST/GraphQL API |
| 5. Immersive Layer | AR & XR | AR wayfinding, digital twin overlays |
Detailed legacy roadmap items (audio streaming, drone integration, blockchain logging, wearable signals, etc.) remain aligned with these stages.
- Flutter (stable channel)
- Android SDK (API level per
compileSdkin Gradle) - Java 11+
- Firebase project w/ Auth, Firestore, Messaging enabled
flutter pub getEnsure Firebase configuration:
android/app/google-services.jsonpresentlib/firebase_options.dartmatches your Firebase project (regenerate viaflutterfire configureif needed)
Run (emulator or device):
flutter runRelease build:
flutter build apk --releaseAdd tests under test/ then run:
flutter test| Path | Purpose |
|---|---|
lib/main.dart |
App entry point bootstrap |
lib/config/ |
Global theming, env, map config |
lib/screens/ |
Role & feature UI flows |
lib/services/ |
Firebase + future backend abstractions |
lib/models/ |
Core data entities |
assets/ |
Static assets & fonts |
test/ |
Automated tests |
Refactoring outcomes: reduced monolith size, higher cohesion, clear separation between UI, orchestration (managers), and integration layers.
- Service Layer: Swap Firebase with FastAPI (REST) by implementing adapter classes only.
- Map Engine: Prepared for vendor swap (Google Maps β MapLibre) via abstraction wrapper.
- Analytics: Hook density calculation pipeline w/out rewriting UI (stream adapter pattern).
- Fork & branch (
feat/<name>) - Implement & add focused tests
- Run lints/tests locally
- Open PR with: scope, rationale, screenshots (UI) or diagrams (architecture)
Coding principles:
- Single responsibility per file
- Declarative UI (prefer stateless where feasible)
- Explicit enums for roles & alert types
- Avoid premature optimization; document extension points
See LICENSE file for usage & redistribution terms.
- Sensor fusion (BLE crowd tags, environmental air quality)
- Drone telemetry ingestion (geo-tagged observation events)
- Wearable pulse/heat stress early warning (opt-in privacy layer)
- AR corridor & evacuation overlays
Because safer, more organized mass gatherings protect lives, preserve cultural heritage, and unlock data that drives smarter urban & event planning β all while keeping the participant experience dignified and inclusive.
"Operational clarity is the difference between managed flow and unmanaged risk."
Refer to repository metadata & commit history for active maintainers. Proposal & integration discussions welcome via issues.
SimhaLink delivers: real-time oversight, structured safety response, role-aware communication, scalable architecture, and a forward path toward predictive and sensor-enhanced crowd intelligence.
Built with β€οΈ in Flutter β engineered for real-world impact.








