NYC Building Atlas
github.com/perlakay/nyc-building-history- Category
- Entertainment
- Rank
- No. 3144Tools index
Previous survey · No. 3014 ·
- Pricing
- Open Source
- Type
- APP
- Use case
- Data, Retrieval & Knowledge
- Builder
- @_Shark_byte
- GitHub
- 42 stars
- Date
About
Interactive 3D map of New York City buildings where you can search addresses, click buildings, and explore detailed information about age, zoning, ownership, historic districts, and landmark status. Features a curated skyline ribbon for major landmarks with no API keys or payments required.
What it does
A browser atlas that extrudes each footprint to its recorded height and tints it by construction era, so a neighbourhood reads as a timeline. Picking a lot opens a card that writes a short narrative from city records: year built, later alterations, whether it sits in a protected district, plus a period fact. The repository has grown beyond its first city into a small engine that also ships San Francisco and Central London editions, each driven by its own settings and datasets.
Why it's ranked here
It turns public records into something a person can actually read, and it is honest about the gaps. Cards flag when the recorded year and height cannot both be true, since the city often keeps the year of an earlier structure on the lot. A hand-maintained correction list fixes famous lots where the official figures are wrong. It is MIT licensed, depends on one mapping library plus a bundler, and needs no account with any paid service.
What's good
The cards are careful with provenance. Search results carry a note that a geocoded pin on a dense block may land on a neighbour, and clicked buildings explain that one lot can share a single address. Landmark stories list their sources as links. Search shows local landmark matches instantly, then adds address hits from the free city geocoder, and falls back to landmarks alone if that lookup fails. Adding a city means writing a settings file, not forking the engine.
Tradeoffs
The New York export script pulls only Manhattan building numbers inside a Manhattan bounding box and drops anything under ten feet, so the other boroughs are not in the footprint layer it produces. The whole building file is downloaded and parsed in the browser before drawing; the San Francisco file exceeds fifty megabytes by the project's own warning. Keyless does not mean offline: tiles, fonts and address lookup come from outside hosts. There is no test script.
How to use it well
Run it locally with the bundler's dev server and start in Manhattan, where the data is densest. Open a tower, then click its neighbours to compare eras and heights on one street, which is what the welcome card suggests. Treat years as the city's record, not ground truth. It suits curious readers and anyone wanting a template for a city map built on open data; it is not a planning or property research tool.
Technical notes+
src/main.js reads window.CITY set by each entry page, streams buildings.geojson with a progress readout, then indexes features by the city's id field (bin for NYC) and applies the per-city overrides file as corrections before adding fill-extrusion layers; height is h in feet times 0.3048. src/cities/nyc.js supplies camera, era step ramp and a geocoder hitting geosearch.planninglabs.nyc, taking the BIN from addendum.pad. scripts/export_nyc_buildings.mjs pages the Socrata footprint dataset 5000 rows at a time, filters bin between 1000000 and 2000000 with height_roof at least 10, and rounds coordinates to five decimals. vite.config.js builds four HTML entries and deletes an unreleased dc data folder after bundling.
Observed
- License
- MIT (LICENSE)
- Language
- JavaScript, ES modules
- Runtime dependency
- maplibre-gl only; Vite as the sole dev dependency (package.json)
- Install surface
- Clone and run npm install then npm run dev; package is marked private, not published
- Interface
- Static multi-page web app with landing, NYC, SF and London entries (vite.config.js)
- NYC footprint coverage
- Export script limits to Manhattan BINs within a Manhattan bounding box, roof height 10 ft or more (scripts/export_nyc_buildings.mjs)
- External services
- CARTO raster tiles, MapLibre demo glyphs, NYC Geosearch for addresses; none need a key (src/main.js, src/cities/nyc.js)
- Tests
- No test script in package.json
Read from README.md, package.json, LICENSE, src/main.js, src/cities/nyc.js, src/panel.js, src/search.js, scripts/export_nyc_buildings.mjs, vite.config.js.
What it can do
Search for building information by address
Street address in New York City → Building details including age, zoning, ownership, and landmark status
Display 3D visualization of NYC buildings
Geographic area or specific location in NYC → Interactive 3D map showing building structures
Retrieve building details on click
Click on building in 3D map → Detailed information about the selected building
Show historic district information
Building or area selection → Historic district designation and related data
Display landmark stories and status
Landmark building selection → Landmark designation status and historical information
Browse curated skyline landmarks
Navigation through skyline ribbon interface → Major NYC landmarks with associated stories and details
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.