🍳 Kitchen Planner 3D
From floor plan to photorealistic kitchen – right in your browser.
Draw a 2D floor plan, snap in cabinets, pick surfaces and view the kitchen in real-time 3D or with path tracing.
Self-hosted, with user accounts and shareable showroom links.
▶ Try the live demo
Features · A real kitchen · Installation · Guide · Operation · Development
[!NOTE]
The kitchen planner lives on as the house planner in Zuhause – there it
covers the whole house and comes with inventory management, where every cabinet compartment is a storage location.
This repository contains the standalone kitchen planner (version 1.0.0).
[!NOTE]
The user interface is available in English and German. It follows your browser language; switch it any time with
the EN/DE selector in the header or the URL parameter ?lang=en / ?lang=de.
Features
📐 Planning
- Floor plan editor: walls with length input, angle and endpoint snapping; doors and windows; room from dimensions
(rectangle, L-shape)
- Floor plan as template: upload a scan or photo, calibrate the scale on a known distance, trace it
- Catalog with base, wall and tall cabinets, appliances, cooking island, side panels and vertical grip profiles;
width adjustable by drag handle, undo/redo
- Handleless kitchens with grip channels (horizontal/vertical), fronts with doors, flaps or 1–4 drawers
- Cooking island with custom column widths, back side as breakfast bar or with doors, overhangs and downdraft hob
🎨 Materials
- Library with lacquers, wood, stone, ceramic, metal, tiles and floors (scans from Poly Haven, CC0)
- Custom surfaces: lacquer colour via colour wheel (matt, satin, high gloss) or upload a photo/texture (including
normal and roughness maps)
- Online libraries Poly Haven and ambientCG, imported to the server
- Texture alignment per area and element: stretch or tile, size, rotation, offset
- Colour adjustment: hue, saturation, brightness, contrast, recolouring, gloss
🖼️ 3D and presentation
- Real time with shadows, ambient occlusion, time of day and lighting controls (sun, sky, lamps, softness)
- Photorealistic: GPU path tracing that refines continuously; save as PNG
- Walk-through with WASD and mouse, camera presets (overview, room corner, front, top)
- Showroom: full-window 3D without toolbars, with guided tour and full screen
🌐 Languages
- English and German user interface, chosen from the browser language, switchable in the header (EN/DE) or via
?lang=en / ?lang=de; server messages are translated too
👥 Accounts and sharing
- Login; the first account becomes the administrator. Sign-up on/off, approval of new accounts, user management
- Plans in your account: save, open, rename, copy, delete
- Showroom link: share a plan for viewing without login (read-only, revocable at any time)
- Without logging in the planner still works – plans are then stored in the browser
A real kitchen
The planning engine of this kitchen planner now powers the house planner in Zuhause.
A real kitchen was planned with it there – handleless tall cabinets with a pass-through door disguised as a cabinet,
stone worktop with undermount sink and a cooking island (images from Zuhause):
Installation
With Docker (recommended)
git clone https://github.com/mupf-dev/kitchen-planner-3d.git
cd kitchen-planner-3d
docker compose up -d --build
The planner then runs at http://localhost:3010. Data is stored in the volume kuechenplaner-data (/data inside
the container).
Without Docker
Requires Node.js ≥ 22.18 (built-in node:sqlite; the server runs TypeScript without a build step).
git clone https://github.com/mupf-dev/kitchen-planner-3d.git
cd kitchen-planner-3d
npm install
npm run build && npm start # → http://localhost:3001
Guide
- Create the room – in the Room tab, enter width, depth and height and click Create walls, or draw them
yourself with Draw wall. Alternatively upload a floor plan image, calibrate it with Scale and trace it.
- Doors and windows – place them on a wall with the Door and Window tools.
- Place cabinets – in the Catalog tab, click an element and then click into the floor plan. Cabinets snap to
walls and neighbours;
R rotates, Shift+click places several, Alt places freely. Change the width with the drag
handles on the sides.
- Choose surfaces – in the Materials tab, pick a material per area (fronts, carcass, worktop, handles,
floor …). Individual elements can get different materials in the properties panel on the right.
- View – switch between 2D, Split and 3D at the top. In 3D, turn on Photorealistic and save with
Image, or use Showroom for presentations.
- Save and share – Log in, save the plan to your account and create a showroom link. Without an account:
File → Export as file (.json).
Keyboard shortcuts: Del delete · R rotate · Ctrl+D duplicate · Ctrl+Z undo · Esc exit tool ·
Alt while dragging: place freely
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗