A map-first workbench for parcel intelligence, development feasibility, and phased building massing.
DataMap turns parcel geometry and researched development records into an interactive decision-support interface. It combines project search, parcel visualization, zoning and market context, environmental screening, phased site-plan generation, and a rotatable 3D massing view in one TypeScript application.
This public portfolio edition contains three curated demo projects and excludes raw research folders, private runtime configuration, and contact/broker data.
- Search projects by address, APN, region, status, and structured property attributes.
- Explore parcel boundaries, multi-parcel assemblies, frontage, adjacent streets, and project context on a Leaflet map.
- Review zoning, market, building, transit, amenity, hazard, and development-program data through typed detail views.
- Generate and inspect a multi-phase site plan from buildable area through parking, circulation, courtyard, and final building footprint.
- Handle rounded frontage, parcel notches, multiple frontage segments, and disconnected development sites without allowing buildable geometry outside the parcel.
- Render final massing as an interactive 3D solid with courtyard voids and story guides.
flowchart LR
A["Curated project JSON"] --> B["Migration and normalization tools"]
B --> C["Typed TypeScript data layer"]
C --> D["Leaflet map and search"]
C --> E["Property intelligence views"]
C --> F["Site-plan massing engine"]
F --> G["Phased 2D plans"]
F --> H["Interactive 3D massing"]
I["Optional Supabase media"] --> E
- TypeScript, Vite, and semantic HTML/CSS
- Leaflet for interactive mapping
- Node.js tooling for research normalization and geometry validation
- Rust-based layout engine for deterministic massing calculations
- Supabase Storage as an optional media layer
| Project | Scenario demonstrated |
|---|---|
| University Gardens | Rounded frontage and phased massing on a large Los Angeles parcel |
| 2059 Venice Blvd | Small multi-parcel conceptual site with conservative parking logic |
| Flora & Fauna | Four-parcel, disconnected-site layout across an internal street |
Demo records are derived from public planning, GIS, assessor, and listing sources. They are provided for software demonstration only and are not a substitute for title, survey, zoning, engineering, or investment due diligence.
Requirements: Node.js 22+ and npm.
git clone https://github.com/NDHoang2003/real-estate-datamap.git
cd real-estate-datamap
npm ci
npm run devOpen http://localhost:3003.
The application runs without Supabase. To enable project media, copy .env.example to .env and add your own Supabase URL and publishable key.
npm test
npm run buildFor a specific massing record:
node agent-tools/layout-site-plan/review_massing.mjs --project-id 5331950400ui/src/ Browser application and typed UI modules
migration/projects/ Curated project records used by the demo
migration/massing/ Generated phase and 3D massing data
agent-tools/search-project/ Research normalization and validation tools
agent-tools/layout-site-plan/ Node/Rust massing pipeline
agent-tools/layout-3d-view/ Final-phase 3D data generation
docs/ Geometry and workflow decisions
supabase/ Optional media-storage schema
My contributions to the collaborative codebase focused on:
- parcel-edge classification and frontage inference;
- migration snapshots and UI-ready data normalization;
- massing generation, buildable-boundary validation, and geometry review tooling;
- removal and validation of existing-building footprints across the UI and generated massing outputs.
These changes emphasized deterministic geometry, explicit diagnostics, and safe handling of irregular parcels.
This portfolio edition was curated by NDHoang2003 from a collaborative DataMap project led by Folky Nguyen, with contributions from Kun Pham. The original MIT license and copyright notice are preserved.
Licensed under the MIT License.
