Case — a real project
DoneWarehouse CRM for a carpentry workshop
A real app used by a real client: orders, a warehouse map, assembly statuses, AI input from photo and voice. Hebrew and Russian, installs on the phone as an app. Used every single day.
The task
At a carpentry workshop, orders lived in someone's head, in WhatsApp and on scraps of paper. Who is assembling what, where a part sits in the warehouse, what stage an order is at — all sorted out by shouting across the floor. They needed a system people actually use with a phone in hand and sawdust on their fingers — in Hebrew and Russian, with no training.
- 01Hebrew (RTL) and Russian — each worker picks their own
- 02Phone on the floor — mobile-first, installs as an app (PWA)
- 03Keyboard-free input — by photo and voice
- 04Roles: manager, storekeeper, assembler — each with their own access
- 05Real client data — auth and privacy
How it works

01
Every order on one board
Each stage is a colour-coded column, from “to assemble” to “shipped”. Cards drag between stages, status changes in one move — and the boss sees the whole picture without shouting across the workshop. Search forgives spelling: “Krieger, Кригер, קריגר” is the same client in any variant, so nobody creates a duplicate over a typo. Next to it — one-click Excel export of the whole warehouse.

02
A warehouse map, not a table of cells
A warehouse keeper thinks in space, not table rows. So the warehouse is drawn as a diagram: racks, aisle, workshop — every order a coloured cell. You see where a part sits and how much room is free; orders are picked by the diagram, not from memory. To move a pallet, you just drag it to its new spot.

03
Tap a pallet — the whole story of the order
A card slides out: status with one tap, how many pallets and which one holds the hardware box. Below — comments: text, photo, voice, @mention a teammate with a notification. Half the crew speaks Russian, half Hebrew, so every comment is translated automatically: everyone reads in their own language.

04
AI understands, code counts
A new order is barely typed at all: snap the pallet label — client and furniture are recognised and fill the fields, the second language is added automatically. The neural net only recognises photos and voice: how many pallets there are and where they sit is counted by the database. Reliable and predictable.

05
Announcements — the whole crew stays in the loop
One message to the whole team — text, photo or voice: “truck on Thursday, clear the aisle”. Read in Hebrew and Russian, no broken telephone across the workshop.

06
Supplies without paper notes
Out of screws — add them to the list right from your phone, frequent items are one tap away. The office sees the list, orders and marks it “ordered”. Nothing lives on word of mouth and sticky notes.
What's inside
The numbers are a working snapshot at the time of this case, not a showcase. It's a live system — they change every day.
Process
- 01
Learned the floor
How an order really moves from call to handover — in the makers' language, not the developer's.
- 02
A bilingual core
Hebrew and Russian, RTL/LTR, access roles — built into the foundation, not tacked on at the end.
- 03
AI input and the map
Photo and voice into order fields, a visual warehouse map — the reason the system gets used at all.
- 04
In production, on phones
Installed as an app on the crew's phones. In use every day.
Stack
Framework
Data
Access
i18n
Platform
The same stack as this very site — Next.js on Railway. One person runs both the site and the warehouse system: so I can take your project from start to finish too.
This case is about a business system
Want one for your business — CRM systems