Zoning Envelope 3D

A Claude Code skill that generates interactive 3D zoning envelope viewers as self-contained HTML files — exact lot polygons from GIS data, extruded buildable volumes, setback zones, height caps, and orbit controls.

Zoning Envelope 3D — Sample Open fullscreen →

What it does

Run /zoning-envelope after a zoning analysis to generate an interactive 3D viewer of the buildable envelope. The output is a self-contained HTML file — no server, no dependencies, opens in any browser.

Demo above: 250 Hudson Street, Manhattan — M1-6 / HSQ (C6-4A equivalent). Base volume (0–85 ft) + tower volume (85–290 ft) on the exact tax lot polygon from NYC MapPLUTO.

Workflow

/zoning-analysis-nyc 250 Hudson St, New York NY   ← analysis (markdown report)
/zoning-envelope                                    ← 3D viewer (HTML file)

The analysis skill produces a structured report with an Envelope Data JSON block containing the lot polygon, setbacks, volumes, and parameters. The envelope skill reads that block and renders it in 3D.

Install

Claude Desktop:

  1. Open CustomizeBrowse plugins
  2. Click +Add marketplace from GitHub
  3. Enter AlpacaLabsLLC/skills-for-architects
  4. Install the Zoning Analysis plugin

Claude Code (terminal):

claude install github:AlpacaLabsLLC/skills-for-architects/02-zoning-analysis

Usage

Point it at a zoning analysis report:

/zoning-envelope path/to/zoning-analysis-250-hudson-st.md

Search by keyword:

/zoning-envelope 250 hudson

Auto-detect the most recent report:

/zoning-envelope

What it renders

  • Exact lot polygon from GIS data — the real cadastral boundary, not a simplified rectangle
  • Setback zones as colored ground overlays with dashed inset lines
  • Buildable volumes — base, tower, galibo — extruded from the polygon at correct heights
  • Height cap at maximum building height
  • Edge-length labels on the lot boundary
  • Parameters panel — FAR, floor area, height limits, setbacks
  • Interactive controls — orbit, zoom, pan

How it handles different districts

District typeEnvelope shape
Height-factor (R7, C6-1)Base box + sky exposure plane wedge
Contextual (R7A, C6-4A)Streetwall base + setback tower
TONE (Uruguay)Full lot with setback zones + flat height cap
Multi-scenarioToggle buttons comparing individual, party-wall, and unified envelopes

Technical details

The viewer is a single HTML file (~300 lines) with:

  • Three.js 0.170 loaded from CDN via import map
  • OrbitControls for interactive navigation
  • Ear-clipping polygon triangulation for arbitrary lot shapes
  • Self-correcting polygon inset (handles both CW and CCW winding from different GIS sources)
  • Canvas-textured sprites for 3D labels
  • Responsive — works on desktop, tablet, and mobile

NYC examples

Interactive 3D envelopes generated from real NYC zoning analyses:

PropertyZoningLotMax Floor Area
250 Hudson StreetM1-6 / HSQ (C6-4A equiv.)21,862 SF218,620 SFView 3D →
60 East 11th StreetC6-14,019 SF24,114 SFView 3D →

Each viewer is a self-contained HTML file — drag to orbit, scroll to zoom, right-drag to pan.

Dependency

This skill requires a zoning analysis report as input. Run /zoning-analysis-nyc first — then /zoning-envelope reads the output.