Inspiration
Agriculture is the bedrock of Nigeria's economy, yet smallholder farmers lose massive percentages of their yields annually to sudden crop blights and poultry diseases like Newcastle disease. Access to immediate veterinary or agronomical expertise is rare and expensive in rural areas. We were inspired to close this gap by creating KazaSense—putting an AI-powered diagnostic specialist directly into the hands of Nigerian farmers, while simultaneously charting disease vectors to protect regional food security.
What it does
KazaSense is an intelligent, real-time diagnostic platform for crop and poultry health. Using a mobile web browser, a farmer snaps a photo of a struggling plant or a sick bird. The app instantly processes the image, returns a clear disease diagnosis, assigns a severity rating, and provides actionable treatment recommendations. At the same time, it captures the geolocation of the report and drops a live warning pin onto an interactive dashboard map so NGOs, cooperatives, and agricultural extension workers can track and isolate outbreaks.
How we built it
Frontend: Built using React 19 and Vite for lightning-fast performance, styled responsively with Tailwind CSS v4, and animated smoothly using Motion. We integrated React-Leaflet to render the dynamic geographic maps tracking the outbreak locations.
Backend: Powered by an Express.js server written in TypeScript. We integrated Multer (utilizing memory storage) to intercept image uploads and pass them seamlessly to the Google Gemini API using the @google/genai SDK and the gemini-2.5-flash model to simulate an enterprise computer vision pipeline.
Production Pipeline: To optimize cloud deployment, we configured esbuild to compile our TypeScript backend into a single, highly optimized standalone CommonJS file (dist/server.cjs), while Vite bundles the React app directly into a static /dist directory served smoothly by Express.
Challenges we ran into
One of our biggest hurdles was bridging the development environment with production compilation. Getting Vite's development middleware mode to switch smoothly over to static file serving in production—especially while bundling the backend using esbuild—required extensive tweaking of our path resolutions. We also had to rigorously engineer our Gemini API prompts to guarantee strict, predictable JSON structures that would parse cleanly into our application state without throwing syntax errors.
Accomplishments that we're proud of
We are incredibly proud of achieving a production-ready build pipeline that bundles the entire frontend and backend into a unified distribution footprint. We succeeded in creating a high-performance application that executes advanced multi-modal AI diagnostics in seconds, running smoothly on mobile browsers without requiring farmers to download heavy apps or have expensive hardware.
What we learned
Building this project deepened our understanding of React 19 architectures and the mechanics of mounting Vite inside an Express backend framework. We gained hands-on experience handling binary image stream conversions to Base64 in Node.js, managing in-memory application states, and orchestrating esbuild configurations for backend bundling.
What's next for KazaSense
Our priority is transitioning our in-memory data store to a persistent cloud database like PostgreSQL or Firestore so outbreak histories are safely preserved when servers scale or sleep. We also want to translate our diagnostic responses into native Nigerian languages—including Hausa, Yoruba, Igbo, and Pidgin English
Log in or sign up for Devpost to join the conversation.