tpt-buildsmart
TypeScriptConstraint-driven generative design and costing engine for residential construction — Rust geometry engine, NestJS API, and React/Tauri front end that turns spatial constraints into real-time-priced floor plans and standardized RFQs.
Languages
TPT BuildSmart
Constraint-driven generative design and costing engine for residential construction.
Project Codename: Project Foundation License: Dual MIT OR Apache-2.0
TPT BuildSmart shifts residential construction estimation from "draw and price" to "define constraints and generate." A high-performance Rust geometry engine solves spatial constraints and produces 2D/3D floor plans, which a Node.js cost engine prices in real time. The system emits a structured, estimator-friendly TPT Standard RFQ that eliminates manual takeoffs for builders.
Repo Layout
tpt-buildsmart/
├── engine/ Rust generative geometry & math engine (gRPC server)
├── api/ NestJS BFF: auth, cost calc, RFQ, bids (gRPC client)
├── web/ React + React Three Fiber front end
├── desktop/ Tauri desktop wrapper around /web
├── proto/ Shared gRPC protobuf contracts
├── infra/ Docker, compose, CI/CD, IaC
└── docs/ Architecture & schema documentation
Architecture
User constraints ──► [Rust engine] ──► geometry + BOM
│
▼
[NestJS API] ──► cost calc, RFQ, bids
│
▼
[React Web / Tauri Desktop]
- Engine ↔ API communicate over gRPC (contracts in
/proto). - Real-time cost: every geometry element is tied to a cost object; moving a wall updates the total instantly.
- "What-If" tradeoffs: eco-efficiency, finish quality, and layout density sliders swap material specs and update the budget live.
- TPT Standard RFQ: machine-readable JSON + human-readable PDF/Excel export, with pre-calculated labor matrix, standardized scope exclusions, and built-in waste factors.
Tech Stack
| Layer | Stack |
|---|---|
| Engine | Rust (geo, petgraph, nalgebra), gRPC (tonic) |
| API | TypeScript / NestJS, Prisma ORM, Passport JWT |
| Web | TypeScript / React, Three.js / React Three Fiber |
| Desktop | Tauri |
| Infra | Docker, Docker Compose, Postgres, CI/CD |
Getting Started
See infra/docker-compose.yml and each package's README for local development instructions.
Roadmap
See todo.md for the phased implementation plan (Phases 0–9).