The core is pure TypeScript logic with no browser code: room geometry, rules, the catalogue, the cut list and the file format. Storage, exports, the 3D view and the interface sit on top, and lint rules keep the layers apart. The 3D view uses Three.js, the plan is SVG, and PDFs are made in the browser with an embedded font that prints Greek text. The interface uses my own design system, the same as this site.
I built it by directing a team of AI coding agents, with the same discipline I expect from a security project. A lead agent acted as architect and product owner. A delivery lead turned each phase brief into small tasks, each with a goal, the files it may touch, acceptance criteria and the tests that prove it. Eight specialists did the work: a researcher, a designer, three developers (core logic, interface, 3D), a tester, a reviewer and a docs writer. The tester never fixes code and the reviewer never edits it, and nothing was merged until both passed it. Every merge ran the same gate: lint, type check, unit tests, end-to-end tests and both builds. The work ran in phases (research, spec and design, architecture with 14 technical spikes, 15 sprints, hardening with a code review, security read and accessibility audit) and each phase waited for my approval. My cabinet making input went in at those gates, for example the default board thicknesses, gaps, sheet size and drawer boxes. 188 decisions are logged with their reasons. At the last gate 11,625 unit tests and 1,281 end-to-end tests passed.
I am a hobbyist, not a professional cabinet maker. I built it for myself, to plan the kitchens I build in my free time. I designed a real kitchen with it, and that kitchen is being built now.
Limits: it runs only on my computer and is not hosted anywhere. It is tested on desktop Chrome and Edge; Firefox and Safari are best effort, and phones and tablets are not supported. The 3D view needs WebGL 2. It has no DXF export, no nesting of parts on sheets (Marangos does this for single cabinets), no custom catalogue entries and no tracing of a room from a photo.