Ecosystem
External and platform services used by UrbanReflex
Ecosystem
Overview
UrbanReflex integrates several external and platform services. Most are optional in dev (mock data if keys are missing). Configure via .env as shown in DEVELOPMENT_SETUP.md.
Orion-LD (Context Broker)
- NGSI-LD-compliant context broker for core entities.
- Default dev URL:
http://localhost:1026/ngsi-ld/v1 - Used for:
RoadSegment,Streetlight,CitizenReport,WeatherObserved,AirQualityObserved,PointOfInterest.
OpenAQ (optional, air quality source)
- External AQ data; can be mocked in dev if API key absent.
OpenWeatherMap (optional, weather source)
- External weather data; can be mocked in dev.
Gemini AI (chatbot LLM)
- Primary LLM for chatbot endpoints (
/ai-service/chatbot/chat).
Pinecone (optional vector search for RAG)
- Enables semantic retrieval for chatbot when configured.
If not set, chatbot still works without vector search.
Databases & Infra
- MongoDB: application data (users, reports metadata). Dev:
mongodb://localhost:27017. - Docker Compose: spins up MongoDB + Orion-LD (via
just devorjust db-start). - Scheduler (planned): fetch external data (OpenAQ/OpenWeather), transform to NGSI-LD, push to Orion-LD/Mongo.
Monitoring / Tooling (future/optional)
- Prometheus & Grafana for metrics/visualization.
- Postman/Thunder Client for API testing.
- VS Code + ESLint/Prettier/Black/isort for dev experience.
