PrototypeSmart aquaculture AI platform / 2024-2025
Problem
Aquaculture operators track water quality, fish health, biomass, feeding, and alerts, but manual checks and disconnected records slow intervention.
Solution
Split the MVP into an Expo app, Next.js dashboard, TypeScript/MongoDB API, FastAPI AI backend, fake-data simulator, and notification service.
Key Features
AI fish counting from video frames using YOLOv8-style Roboflow detection and centroid tracking
Fish weight and biomass estimation from image-based length detection and an empirical formula
Disease classification for healthy fish, Aeromonas, Streptococcus, Tilapia Lake Virus, and uncertain cases
Sensor monitoring for pH, oxygen, temperature, water level, salinity, nitrate, and suspended solids
Gemini/Agno report generation from tank measurements and fish details
Expo mobile app for pond overview, alerts, profiles, notifications, and multi-pond navigation
Next.js admin dashboard for real-time pond monitoring, role management, feeds, and analytics
Cron-based data simulator for hackathon demos with generated measurements and dummy fish images
Architecture Map
Mermaid
flowchart LR
subgraph Research["Research foundation"]
Thesis["End-of-study research: IoT, mobile UX, ML"]
end
subgraph Inputs["Pond inputs"]
Sensors["Sensor measurements: pH, oxygen, temperature, water level"]
Camera["Camera/image inputs: count, weight, disease"]
Simulator["Fake data simulator: cron jobs and dummy images"]
end
subgraph Core["Core platform"]
Api["TypeScript Express API: users, tanks, feeds, measurements"]
Db[("MongoDB / Mongoose")]
Scheduler["Scheduled reporting and measurement aggregation"]
end
subgraph AIServices["AI services"]
FastAPI["FastAPI AI backend"]
Roboflow["Roboflow models: YOLOv8 + disease classifier"]
Vision["OpenCV + centroid tracker for counting and weight flow"]
Gemini["Gemini + Agno farm report generation"]
end
subgraph Clients["Operator surfaces"]
Mobile["Expo mobile app: farmer pond overview"]
Dashboard["Next.js admin dashboard: monitoring and roles"]
Notify["Expo / FCM + email alerts"]
end
Thesis --> Simulator
Sensors --> Simulator
Camera --> Simulator
Simulator --> Api
Simulator --> FastAPI
Mobile <--> Api
Dashboard <--> Api
Api <--> Db
Api --> Scheduler
Scheduler --> FastAPI
Api --> Notify
FastAPI --> Roboflow
FastAPI --> Vision
FastAPI --> Gemini
FastAPI --> Api