Skip to content
Back

Suprimentos (WMS)

In productionRole: Lead developerFlutterRiverpodSupabaseAndroid

Grupo Coagro's WMS in Flutter: inventory, receiving, checking, picking and slotting on Android data collectors, replacing the ERP vendor's app.

Suprimentos (WMS)

// Overview

Coagro's warehouse module: lot management, logistics data, picking addresses, inventory, receiving, checking, picking and auditing — on Android data collectors, on the web and on Windows.

// The challenge

The warehouse ran on the ERP vendor's data-collector app, a black box that was hard to adapt to the operation. Replacing it meant faithfully reproducing what it did, routine by routine, before improving anything — without stopping the warehouse.

// Constraints

Faithfully reproduce the ERP vendor's collector, routine by routine, before improving anything — without stopping the warehouse — and run on Android collectors, the web and Windows.

// Engineering decisions

Rules in the database

Choice
all data access goes through Postgres RPCs.
Why
the rules hold for any client — Android collector, web and Windows — without being rewritten in each.
Trade-off
business logic lives in SQL, outside the Dart code.

// The solution

A Flutter app with Riverpod and feature-first Clean Architecture, sharing theme, components and telemetry with CRM Loja. All data access goes through Postgres RPCs, so the rules live in the database and hold for any client. Workflows are barcode-driven, with blind counting and checking and accent-insensitive product search; distribution is by OTA APK updates, with no store.

My role

Lead developer (about 98% of commits): architecture, app, database (169 migrations), tests and distribution. A Grupo Coagro system, in partnership with NWERP.

Tech stack

FlutterDartRiverpodgo_routerSupabasePostgreSQLKotlin

// Screens

WMS side menu listing receiving, stock, inventory and shipping modules
Picking order list showing item progress and the order assigned to the operator
Barcode-driven item picking with pick location and quantity to confirm

// Outcome and evidence

In use in the warehouse, with inventory, checking and picking already in production, at version 1.50 and with about 290 test files.

test files
~290
Supabase migrations
169
of the commits
~98%

Looking for this kind of work?