BrickSmith 2.0 — Makers of Difficult Things
BrickSmith 2.0
Desktop Application

Any 3D model. Your bricks.

A GPU-accelerated desktop tool that transforms STL and OBJ files into buildable brick creations — scaled to the parts you actually own, with step-by-step instructions that look like the real thing.

Python React Three.js FastAPI NVIDIA CUDA SQLite
3D
Model Import
10k+
Part Library
PDF
Build Manuals

From mesh to manual.

Six stages turn a 3D file into something you can build on your desk with the bricks in your collection.

01
Import
Load STL or OBJ with 3D preview
02
Scale
Auto-fit to your inventory
03
Voxelise
GPU-accelerated mesh to stud grid
04
Map
Greedy brick placement
05
Analyse
Gap analysis & BOM
06
Build
Interactive 3D + PDF manual

What it does

📦

3D Model Import

Drop in any STL or OBJ file. The viewer shows vertex count, face count, and bounding dimensions — then renders a full interactive Three.js preview you can orbit and zoom.

📐

Inventory-Aware Scaling

The app analyses your parts collection and suggests the optimal build size — the largest model you can make with the fewest missing pieces. Override manually if you want bigger.

🧱

Smart Brick Mapping

Greedy largest-first placement with joint staggering so seams never align. Supports SNOT building, slopes, wedges, and tiles on exposed surfaces for a polished finish.

⚡

NVIDIA CUDA Acceleration

Voxelisation and brick mapping run on the GPU via CUDA when an NVIDIA card is detected. Complex models that would take minutes on CPU process in seconds. Falls back to CPU gracefully.

🎨

Colour Modes

Choose colour-accurate (maps mesh materials to nearest LEGO colour via CIE Delta-E) or use-what-I-have (fills with owned parts while keeping colour regions consistent).

📋

Gap Analysis

Full bill of materials with traffic-light status — green for parts you own, amber for alternatives, red for missing. Exports directly to a Rebrickable wanted list.

📖

Build Manuals

Generates professional PDF instructions with isometric views, step numbering, parts callouts, and a cover page — built to look and feel like official LEGO manuals.

Getting started

1

Connect your inventory

Enter your Rebrickable API key in the settings. The app syncs your full parts inventory — every brick, colour, and quantity — into a local SQLite database.

2

Import a 3D model

Upload an STL or OBJ file. The app renders it in a Three.js viewport and shows mesh stats. It also suggests the best build scale based on what you own.

3

Voxelise and map

One click converts the mesh to a stud-resolution voxel grid, then runs the brick mapper — placing real LEGO parts with structural staggering and detail techniques.

4

Review and build

Step through the interactive 3D viewer or export a full PDF manual. Check the gap analysis, order any missing parts, and start building.

Under the hood

Python handles the heavy computation. The browser handles the visuals.

BACKEND

Python · FastAPI · trimesh · numpy · CUDA

FRONTEND

React · Vite · Three.js · TailwindCSS

DATA

SQLite · Rebrickable API · LDraw parts

OUTPUT

PDF manual · Isometric render · BOM export

┌─────────────────────────────────────┐ │ Browser UI (Frontend) │ │ React + Three.js + TailwindCSS │ │ 3D viewer · step builder · export │ └────────────┬────────────────────────┘ │ REST API ┌────────────▼────────────────────────┐ │ Python Backend (FastAPI) │ │ Voxeliser · brick mapper · PDF gen │ │ Rebrickable sync · SQLite │ ├─────────────────────────────────────┤ │ NVIDIA CUDA (GPU Accel) │ │ Parallel voxelisation · mesh ops │ │ Auto-detect · CPU fallback │ └─────────────────────────────────────┘

The manual

Every build generates a PDF that follows the format LEGO fans expect — cover, parts inventory, numbered steps with isometric views and callout boxes.

Cover
Castle Build
847 pieces · ~2hrs
Parts Inventory
Full BOM with quantities and colours
2
Step 14
Isometric View
New bricks highlighted · previous greyed
8
Complete
Glamour Shot
Finished model hero render
24

BrickSmith is a Bushell Design project · Made in the UK
LEGO® is a trademark of the LEGO Group, which does not sponsor or endorse this software

Selected Works

PartForgeManufacturing System
Machina AutomataMachine Automation Simulation
BrickSmithBrick Builder