Problem
L&M Tailoring — operating as Sastrería Stein — ran its whole order pipeline on paper. Orders, client records, operator assignments, deposit tracking, dispatch dates — all written, all in one notebook at a time, all impossible to query. Nothing synced between the floor staff and the office. Lost paper was lost work.
The workshop didn’t have internet-grade infrastructure to lean on. Any solution had to live on the local network, survive day-to-day floor conditions, and replace the paper system completely on day one.
Approach
I built the system end-to-end as the sole engineer over six months:
- Backend — a Django + PostgreSQL central server modeling the order domain: clients, operators, orders with arrival / requested / dispatch dates, multi-stage deposits (initial / pending / final), and sub-task tracking within each order.
- Mobile — a Flutter app for the staff — order list split into pendientes / despachados, a “new order” form that mirrors what the paper notebook used to capture, plus settings that let the device point at whichever IP the workshop server lives on.
- On-prem LAN — provisioned the workshop’s local network so the central Django server and every Flutter client synced in real time. Settings screen exposes the server endpoint (e.g.,
192.168.1.100:8000) and an HTTPS toggle so the deployment stays portable across environments.
The cutover was a one-day switch from notebook to app. Zero data loss across the boundary.
Outcome
100% of the paper-based ordering and bookkeeping was replaced. Sales now synchronize across the whole workshop network in real time. The owner can see every order’s status without walking the floor; floor staff register pedidos directly from the device they already had in their pocket.
The app stayed in production at v1.1.1 with the orange / charcoal identity the workshop uses on its branding.


