A free, browser-based 2D floor plan editor. Draw walls, furnish rooms from a catalog of 80+ items, manage multiple floors, and print your plans — all from the browser, no install needed.
Credit: This project is heavily inspired by (and shares its name with) the original Arcada floor planner. We rewrote the entire codebase from scratch with a different tech stack and added new features.
Select the Wall tool and click on the canvas to place nodes — walls are drawn automatically between them. Click on an existing wall to split it. Right-click a wall to mark it as exterior (thicker, darker).
Browse the catalog on the right panel: Bedroom, Kitchen, Living Room, Bathroom, Office, and more. Click any item to drop it on the canvas — it's auto-selected and ready to move.
Click any furniture to select it. Drag to move, pull the corner handles to resize, or drag the top circle to rotate. The floating panel lets you type exact values in cm and degrees.
Use the arrows in the toolbar to add and navigate floors. Each floor is independent — its own walls and furniture. Remove a floor with the trash icon.
- Save your project as a
.arcadafile and load it back anytime - Ctrl+S for quick save to browser storage
- Print renders all floors on A4 pages with measurements, ready for PDF or paper
| Tool | What it does |
|---|---|
| Select | Click to select, drag to move, pull handles to resize/rotate, drag wall nodes to reshape |
| Wall | Click to place wall nodes, click on walls to split them |
| Erase | Click any element to delete it |
| Input | Action |
|---|---|
| Right-click drag | Pan the canvas |
| Scroll wheel | Zoom in / out |
| Right-click on wall | Toggle exterior / interior |
| Snap dropdown | Set snap precision: Off, 5, 10, 25, or 50 cm |
| Shortcut | Action |
|---|---|
| Escape | Return to Select tool |
| Ctrl+S | Quick save |
| Ctrl+Z | Undo |
| Ctrl+Shift+Z / Ctrl+Y | Redo |
| Ctrl+C / V / X | Copy / Paste / Cut furniture |
| Delete | Remove selected furniture |
![]() |
![]() |
![]() |
| Editor overview | Drawing walls | Placing furniture |
![]() |
![]() |
![]() |
| Resize & rotate | Multiple floors | Print view |
- ARCHITECTURE.md — how the code works under the hood
- DEPLOY.md — how to build and deploy to GitHub Pages
MIT





