Skip to main content
Back to projects

MTTECH - UD Mesin Tani

A promotional app for an agriculture equipment supplier. Built to help farmers find the right tools without drowning in spec sheets.

FlutterGetX
MTTECH - UD Mesin Tani

Overview

UD Mesin Tani sells farming equipment — tractors, plows, irrigation pumps, the works. Their problem wasn't inventory. It was communication. Farmers would call asking about specs, prices, availability. The same questions, over and over. They needed a way to put their catalog in people's pockets.

MTTECH is that catalog. Browse equipment by category, check specs, see what's in stock, get contact info. Simple stuff, but it mattered. The app had to work on cheap Android phones with spotty connections. No fancy animations. No bloated dependencies. Just information, fast.

I built it with Flutter because cross-platform made sense for their budget, and GetX kept the state management straightforward. The whole thing is basically a product browser with offline caching. Not glamorous, but it solved the problem.

Client

UD Mesin Tani is a local agricultural equipment supplier in East Java. They've been around for years, serving small to mid-size farms. Good reputation, solid products, but their marketing was stuck in the 2000s — phone calls and printed catalogs.

The owner wanted to modernize without losing the personal touch. He didn't want an e-commerce platform. He wanted farmers to browse on their own time, then call when they're ready. The app was meant to inform, not sell.

Features

Product catalog organized by equipment type — tractors, tillers, harvesters, irrigation systems. Each item has photos, specs, pricing, and availability status. Search works offline once you've loaded the catalog.

Contact integration lets users call or WhatsApp directly from the product page. Location map shows the store and service centers. Push notifications for new arrivals and promotions, though they rarely use it.

The offline mode was non-negotiable. Rural internet is unreliable. Once you've opened the app and synced, you can browse everything without a connection. Images are cached aggressively.

Tech Stack

Flutter for the UI and cross-platform build. GetX for state management and routing — lightweight, reactive, no boilerplate. Dio for HTTP requests with retry logic and caching. Hive for local storage because it's fast and doesn't need native setup.

Firebase Cloud Messaging for push notifications. Google Maps API for the location feature. The backend is a simple REST API they already had — I just built the mobile client.

My Role

Solo developer. I handled everything from UI design to Play Store deployment. The client had mockups from a designer, but they were desktop-oriented. I adapted them for mobile, focusing on thumb-friendly navigation and readable text on small screens.

The trickiest part was the offline sync strategy. I had to decide what to cache, when to refresh, and how to handle conflicts. Ended up with a simple "sync on app open" approach with manual refresh. Not perfect, but it worked for their use case.

Deployed to the Play Store, wrote the listing copy, and trained their staff on how to update content through the backend. They're still using it. Last I checked, it had a few thousand installs and decent reviews.