Skip to content

About

Turn real building plan sets into photoreal renders locally: PDF permit drawings → Zoo.dev KCL CAD → Blender → verified render. Runs on your Claude Code subscription, not an API key.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ZooDev

Turn a real building plan set into a photoreal render — locally, on your own machine.

PDF permit drawings → parametric CAD → 3D model → rendered image. No SaaS seat, no render farm.

📺 Watch the 4:30 demo

ZooDev Studio


The problem

An individual — a homeowner, a small builder, an agent with a listing — cannot get a decent render of a building they already have drawings for. The tooling assumes a studio: seat licences, a render farm, and someone who knows how to drive them.

Businesses solve it by paying for specialised subscriptions, stacked per seat and per month, to do what is fundamentally one job: read the drawings, model the massing, light it, render it.

The solution

ZooDev does that job on hardware you already own. It is nearly fully self-hosted — your machine holds the CAD, the scene, and every render. Two cloud calls do work that genuinely needs it: Zoo.dev's Zookeeper agent authors the parametric CAD, and Claude reads the drawings and directs the scene.

Claude runs through the Claude Code CLI on your existing Max/Pro subscription — not a metered API key. ZooDev actively strips ANTHROPIC_API_KEY from every call so it can never silently bill per token.


Start to finish

1 · Real permit sheet 2 · Parametric CAD 3 · Rendered
plan cad render

Claude reads every sheet and extracts a dimensional building program → Zookeeper authors KCL CAD from it → the Zoo engine exports GLB → Blender builds materials, terrain, sky and camera → Cycles renders it. Every generated script is executed and machine-verified, and every render is checked for actual image content — a black frame fails instead of passing as "done".

More output

tower house retail

Install

Paste this into Claude Code and it will do the whole thing:

Clone https://github.com/5eh/Zoo_Dev_Hackathon_August into ~/ZooDev and set it up:

1. Clone the repo and cd into it.
2. Run ./setup.sh and read its output.
3. Fix whatever it reports as a blocker:
   - Blender: needs 5.2 LTS (4.2+ works). Verify with `blender --version`; if it is
     missing or older, install the LTS build for my OS and tell me what you did.
   - zoo CLI: install from https://zoo.dev/docs/cli/zoo, then `zoo auth login`.
   - Claude Code CLI: must be signed in on my Max/Pro SUBSCRIPTION, not an API key.
     Confirm `claude --version` works. Do not set ANTHROPIC_API_KEY.
4. Put my Zoo token in .env.local as ZOO_API_TOKEN (ask me for it — never print it
   back, never commit it, chmod 600). Confirm .env.local is git-ignored.
5. Re-run ./setup.sh until it reports 0 blockers.
6. Start it with ./launch.sh, confirm http://127.0.0.1:8737 answers, then tell me
   what to click first.

Or do it yourself:

git clone https://github.com/5eh/Zoo_Dev_Hackathon_August.git ZooDev
cd ZooDev && ./setup.sh          # checks Blender/zoo/claude, writes .env.local, installs the launcher
echo 'ZOO_API_TOKEN=zoo_...' >> .env.local
./launch.sh                       # or the "ZooDev Studio" launcher icon

Then open http://127.0.0.1:8737.

Requirements: Linux + Blender 5.2 LTS · zoo CLI + a Zoo API token · Claude Code CLI signed in on a Max/Pro subscription.

Secrets: tokens live only in .env.local — git-ignored, chmod 600, never printed. .env.example shows the shape.


Try it

  • 🎲 Random plan — searches the web for a genuine permit set (county sample plans, measured drawings, planning submissions), verifies the download, shows the sheet, and builds it.

  • Drop a PDF — three real sets are in samples/:

    file what it is
    harwelden-mansion-measured-drawings.pdf 5-sheet measured as-built of a mansion + carriage house
    usda-farm-shop-1949.pdf USDA / NJ Extension 24×30 ft frame farm shop (1949)
    uk-planning-change-of-use.pdf UK planning application set, 1:100 @ A1
  • Describe a building in the chat and let Zookeeper model it.

Then press Complete rendering. Orbit the camera on the Render tab if something stands in the shot, and export GLB / KCL / STEP / STL / OBJ.


Notes

One project owns the workspace at a time. 🧹 is the hard stop: it aborts any running job, archives that project — artifacts and its conversation — to projects/, and clears the canvas. Everything else refuses to swap the model out from under a running job.

Tests (studio must be running):

node tests/ui_audit.mjs           # front-end audit in a real browser, 26 checks
python3 tests/test_chat_server_http.py

More detail: ARCHITECTURE.md · DEMO.md

Questions — Telegram @WatsonLR · Discord watsonlr

Sample plans are public documents (measured drawings, agricultural extension plans, planning-portal submissions) included so you have something real to test against.

About

Turn real building plan sets into photoreal renders locally: PDF permit drawings → Zoo.dev KCL CAD → Blender → verified render. Runs on your Claude Code subscription, not an API key.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages