Prerequisites
Before installing Gridfinity Builder locally, ensure you have:- Node.js 18+ (LTS recommended)
- npm 9+ (included with Node.js)
- Modern browser with WASM and ES2020+ support
Gridfinity Builder requires WebAssembly support for the Manifold CSG engine. All modern browsers (Chrome, Edge, Firefox, Safari) are supported.
Local Development Setup
Install dependencies
- React 18.3+ - UI framework
- Three.js 0.170+ - 3D rendering
- Manifold 3D 3.3+ - WASM CSG engine
- Zustand 5.0+ - State management
- Vite 6.0+ - Build tool and dev server
Start the development server
Open in browser
Navigate to http://localhost:5173You should see the Gridfinity Builder interface with the default 6x6 grid.
Production Build
To create an optimized production build:dist/ and can be deployed to any static hosting service (Vercel, Netlify, GitHub Pages, etc.).
Docker Setup
Build the Docker image
Dockerfile which:- Starts from
node:20-alpinebase image - Installs dependencies with npm
- Exposes port 5173
- Runs the Vite dev server with
--host 0.0.0.0
Start the container
Docker Volume Mounts
Thedocker-compose.yml mounts source files for hot reloading:
Stop the Container
Progressive Web App (PWA) Installation
Gridfinity Builder can be installed as a Progressive Web App for offline use.- Chrome / Edge (Desktop)
- Chrome (Android)
- Safari (macOS)
- Safari (iOS)
Open the live demo
Navigate to https://gridfinity.securedev.codes/
Install the app
Look for the install icon in the address bar (⊕ or computer icon).Click it and select Install in the popup.Alternatively:
- Click the three-dot menu (⋮)
- Select Install Gridfinity Builder…
Offline Support
After installation, Gridfinity Builder works fully offline:- All assets are cached via Service Worker
- Layouts are saved to browser localStorage
- 3MF export runs entirely client-side
Browser Compatibility
| Browser | Support Level | Notes |
|---|---|---|
| Chrome / Edge | ✅ Full | Install prompt + offline support |
| Firefox | ⚠️ Partial | Offline support, no install prompt |
| Safari (macOS) | ⚠️ Partial | Manual “Add to Dock” required |
| Safari (iOS) | ⚠️ Partial | Manual “Add to Home Screen” required |
System Requirements
Minimum
- OS: Windows 10, macOS 10.15, or Ubuntu 20.04
- RAM: 4 GB
- Browser: Chrome 90+, Edge 90+, Firefox 88+, Safari 14+
Recommended
- OS: Windows 11, macOS 13+, or Ubuntu 22.04
- RAM: 8 GB or more
- Browser: Latest version of Chrome, Edge, or Safari
- GPU: Dedicated GPU for smoother 3D rendering (optional)
Geometry generation uses the Manifold WASM CSG engine, which is CPU-bound. Complex layouts with many dividers may take a few seconds to render on slower hardware.
Troubleshooting
3D preview is blank or shows errors
3D preview is blank or shows errors
- Check WebGL support: Visit webglreport.com to verify your browser supports WebGL 2.0
- Update graphics drivers: Outdated GPU drivers can cause rendering issues
- Try a different browser: Some browsers have better WebGL support than others
WASM module fails to load
WASM module fails to load
- Check browser compatibility: Manifold 3D requires WASM support (Chrome 57+, Firefox 52+, Safari 11+)
- Disable browser extensions: Ad blockers or privacy extensions may block WASM loading
- Clear cache: Force refresh with Ctrl+Shift+R (Cmd+Shift+R on macOS)
Dev server won't start on port 5173
Dev server won't start on port 5173
- Check if port is in use: Run
lsof -i :5173(macOS/Linux) ornetstat -ano | findstr :5173(Windows) - Kill the process:
kill -9 <PID>or use Task Manager - Use a different port: Run
npm run dev -- --port 3000
Docker container exits immediately
Docker container exits immediately
- Check logs:
docker compose logs app - Verify Node version: Container uses node:20-alpine (must support Vite 6)
- Rebuild without cache:
docker compose build --no-cache
Next Steps
Quickstart
Create your first Gridfinity layout in 5 minutes
Features
Explore advanced features like auto-fill and BOM calculator
Architecture
Learn how the geometry pipeline and CSG engine work
Contributing
Report issues or contribute on GitHub
