820 B
820 B
Architecture
FishIQ begins as a modular monolith around Django and PostgreSQL, with Redis for caching and background work. The web and mobile clients consume a versioned REST API. Professor Finn, recommendations, conditions, and notifications have explicit service boundaries but remain deployable together until scale or team ownership justifies extraction.
Core flow
User + trip + target species + water body → normalized conditions → recommendation evidence → ranked plan → Professor Finn explanation.
Principles
- Keep precise catch locations private by default.
- Store source, timestamp, and freshness for condition data.
- Make recommendations explainable and measure outcomes.
- Keep provider integrations behind adapters.
- Never send secrets or unnecessary personal data to AI providers.