Lumis Studios
All Work
AgriTech

MTN Farms

Farm operations management built for African farmers.

2024

Overview

MTN Farms replaces paper-based farm record keeping with a structured digital system farmers can use directly from the field. The app organises each farming season into a project — and within that project, tracks every dimension of operations: labor hours, land preparation, harvest yields, spraying schedules, and fertilizer applications. It was designed specifically for African conditions — mobile-first, offline-capable, and performant on low-end Android devices.

Our Role

Designed the data model for agricultural projects, built the full Nuxt 3 frontend, set up Firestore persistence, configured offline PWA caching, and designed the green-first UI suited for outdoor use.

Tech Stack

Nuxt 3Vue 3TypeScriptFirebaseFirestorePiniaVueUsePWA

Key Features

Agricultural Project Management

Each farming season is a project with crop type, acreage, and location. Farmers can manage multiple projects simultaneously — a maize plot, a kitchen garden, and a cash crop — each with its own independent tracking data.

Labor Tracking

Log worker names, hours, tasks, and costs for every labor session. Over a season, farmers get a complete record of labor expenditure that can be used for cost analysis and future planning.

Harvest Monitoring

Record harvest dates, yield quantities, and quality grades. Historical harvest data builds a multi-season picture of farm productivity — showing which inputs and practices produce the best results.

Spraying & Fertilizer Schedules

Track pesticide and fungicide applications with product names, quantities, and dates. Fertilizer logs capture type, quantity, and application date. Both create an auditable record critical for organic certification and export compliance.

Offline-First Operation

Farmers often work in areas with no mobile signal. The app caches all project data locally via Workbox service workers. Changes made offline are queued and synced to Firestore when connectivity returns.

Project Pinning & Archive

Active projects can be pinned for quick access. Completed seasons are archived rather than deleted, preserving the full historical record while keeping the active project list clean.

How It Was Built

Built with Nuxt 3 (Vue 3 + TypeScript) in client-only mode, optimised for mobile performance. Pinia stores with localStorage persistence hold project data locally, ensuring the app is fast and functional even before the network responds. Firestore acts as the source of truth for all farm data, with JWT-authenticated API calls syncing changes. The data model uses six normalised sub-tables per project (labor, land prep, harvest, spraying, fertilizer, progress), each independently queryable. VueUse provides reactive device utilities. The PWA layer is configured with a mobile-first install prompt — the app ships with a 1080×1920 screenshot for the Android install sheet, presenting itself as a standalone app rather than a browser tab.

Highlights

  • Six tracking modules per project: labor, land prep, harvest, spraying, fertilizer, progress
  • Full offline operation — data queued locally and synced when connectivity returns
  • Mobile-first PWA with Android install prompt and standalone display mode
  • JWT authentication with localStorage persistence for field use without re-login
  • Multi-project support — manage multiple crop cycles and locations simultaneously
  • Designed for low-end Android devices common in rural Kenyan farming communities