Skip to main content

Home / Projects / CropOptima - Crop Disease Detection App

CropOptima - Crop Disease Detection App

Top 50 national Bangkit Academy Android app for crop disease detection using Kotlin, Machine Learning, backend APIs, and VPS deployment.

Role

Android Developer & Cloud Engineer

Duration

6 months

Team

7 developers

CropOptima - Crop Disease Detection App — landscape view
CropOptima - Crop Disease Detection App — portrait view

Tech Stack

Kotlin · Machine Learning · Backend API · VPS · Android

CropOptima is an Android application built during Bangkit Academy 2023 Batch 2 to detect crop disease using Machine Learning, with backend APIs and model deployment handled on a VPS for real-time inference.

Problem

Farmers needed a faster way to spot signs of crop disease. Manual inspection is slow and not always practical when a decision has to be made on the spot.

Solution

Built a Kotlin Android app that uses machine learning to help detect crop disease, with backend APIs and model deployment on a VPS so inference runs in real time.

Architecture Decisions

  • Chose Kotlin for native Android development and direct access to Android platform capabilities
  • Deployed ML model and backend APIs on a VPS for real-time inference
  • Kept the mobile app and inference backend separated through API boundaries
  • Focused the product flow on disease detection rather than broad farming features

Trade-offs

  • Native Android over cross-platform — faster delivery for the Bangkit team scope, but iOS was not supported
  • Server-side inference over on-device inference — easier model deployment, but depends on network access
  • Focused disease detection scope over broad farm management features

Lessons Learned

  • ML model accuracy heavily depends on training data quality
  • Real agricultural data is noisy — need robust error handling
  • Farmers prefer simple UI over feature-rich interfaces
  • Agile methodology critical for 7-person team coordination

Features

  • Machine Learning-based crop disease detection
  • Android app built with Kotlin
  • Backend API integration
  • VPS-based model and API deployment
  • User authentication (register, login, reset)
  • Detection result visualization
  • Responsive and intuitive UI

Challenges Overcome

  • Deploying ML models and backend APIs on a VPS
  • Handling real-time inference flow between Android and backend services
  • Designing a user-friendly mobile interface for agricultural users
  • Coordinating delivery in a multi-person Bangkit Academy capstone team

Achievement

  • Top 50 National Teams, Bangkit Academy 2023 Batch 2