editor
Create and share 3D architectural projects.
A free browser-based 3D architectural editor for designing buildings with walls, floors, doors, windows, and lights, with projects saved locally in the browser and shareable, no desktop CAD software required.
Pascal Editor is a browser-based 3D tool for designing and sharing architectural projects — think laying out a building with walls, floors, ceilings, roofs, doors, windows, and lights, all in 3D. The repository contains the source code for the editor itself; the description says it lets you "create and share 3D architectural projects."
Technically the project is a Turborepo monorepo (a single repository that holds several related packages) made up of three parts: a core package that defines the data shape of a building and manages its state, a viewer package that does the actual 3D rendering, and an editor app built with Next.js that adds the user interface and editing tools. Rendering is done with React Three Fiber, a React-based wrapper around the Three.js 3D library, running on WebGPU, the modern browser graphics API. The scene is described as a flat dictionary of "nodes" — Site, Building, Level, Wall, Slab, Ceiling, Roof, Zone, Item, Scan, Guide — linked by parent IDs rather than nested. State is held in Zustand stores (a small React state library), saved into the browser's IndexedDB so projects persist locally, and history is tracked with undo and redo. "Systems" run every frame and only rebuild geometry for nodes that have changed, which keeps editing responsive.
You would use Pascal Editor if you want a free, browser-based way to sketch a building in 3D and share it, without installing heavy desktop CAD software. The code is MIT licensed and published as npm packages under the @pascal-app scope. The full README is longer than what was provided.
Where it fits
- Sketch a building floor plan and 3D model entirely in the browser without installing desktop CAD software.
- Share an architectural project layout with collaborators via a browser link with no account required.
- Extend the editor with custom node types or tools by building on the MIT-licensed core and viewer packages.