In productie

Een magazijnsysteem voor een onderdelenhandel

Ik heb dit systeem opgezet en het eerste jaar alleen gebouwd: orders uit webshop, marktplaats en balie in één werkstroom, van picken tot verzenden. Daarna is het samen met een collega doorontwikkeld.

Rol
Opgezet, het eerste jaar alleen gebouwd
Periode
Sinds februari 2025
Stack
TypeScript, Next.js, drizzle-orm, Bun, MySQL, Docker
Status
In productie
WebshopOrdersyncPicklijstFotocontroleLabelPushmeldingmet de onderdelen-API, één werkstroomlabels voor afhalen en voor montage
Schets in plaats van schermen: de klant blijft anoniem.

Het probleem

Een onderdelenhandel verkoopt via een eigen webshop, een online marktplaats en de balie. Elk kanaal had zijn eigen orders, en dubbel afboeken was een reëel risico.

Wat ik bouwde

Ik heb de repository opgezet en het eerste jaar alleen gebouwd, op Next.js en MySQL, met drizzle-orm op Bun. De orders komen samen in één werkstroom, met een picklijst op de telefoon van de magazijnmedewerker.

Daarna is het systeem samen met een collega doorontwikkeld. Wat later samen of door de collega is gebouwd, staat hier niet als mijn werk.

Wat er technisch toe doet

  1. Ordersync met de webshop en de onderdelen-API

    Orders uit de webshop en gegevens uit de onderdelen-API komen in het systeem samen, zodat het magazijn vanuit één lijst werkt.

  2. Een picklijst met productfoto's en een fotocontrole

    Bij elk artikel op de picklijst staat een productfoto, met een fotocontrole erbij, zodat het juiste onderdeel het magazijn uit gaat.

  3. Labels voor afhalen en montage

    Het systeem maakt de labels voor onderdelen die worden afgehaald en voor onderdelen die worden gemonteerd.

  4. Pushmeldingen

    Meldingen gaan als pushbericht naar de telefoons van de magazijnmedewerkers.

  5. De voertuigenmodule

    Voertuigen en hun gegevens staan in hetzelfde systeem als de orders en de voorraad.

  6. De CI- en Docker-build

    Elke wijziging wordt met GitHub Actions automatisch gebouwd tot een Docker-image.

Meetstaat

Geteld in de repository. Het aantal tabellen is dat van het huidige schema, na de doorontwikkeling.

eerste commit: de repository zette ik op
01-02-2025
tabellen in het huidige schema
31
Hoe gemeten
git log --reverse --format=%ad --date=short | head -1
grep -c 'mysqlTable(' app/server/db/schema.ts

Gemeten op 27-10-2026 in de repository van het project.

Iets vergelijkbaars nodig, of een team dat zo'n systeem bouwt?

info@bitvire.com