Skip to content

A simple map-based tool for selecting multiple NYC tax lots and downloading a CSV or shapefile of their PLUTO data

License

Notifications You must be signed in to change notification settings

NYCPlanning/labs-tax-lot-selector

Repository files navigation

NYC Tax Lot Selector (BBL List Generator)

This is a simple map-based tool for selecting multiple NYC tax lots and downloading a CSV/SHP file with their BBLs (Borough/Block/Lot).

Built with Department of City Planning's Business Improvement Division, this tool's primary purpose is to complement other information systems that require a list of affected tax lots to describe a study area, rezoning, or other area of interest. Instead of a more manual process using desktop GIS software, this tool allows the user to quickly identify the lots in their area of interest through a simple, open web interface. The user can select those lots that are within the area of interest, and quickly download the lot identifiers as machine-readable data.

image

How we work

NYC Planning Labs takes on a single project at a time, working closely with our customers from concept to delivery in a matter of weeks. We conduct regular maintenance between larger projects.

How you can help

In the spirit of free software, everyone is encouraged to help improve this project. Here are some ways you can contribute.

  • Comment on or clarify [issues](link to issues)
  • Report [bugs](link to bugs)
  • Suggest new features
  • Write or edit documentation
  • Write code (no patch is too small)
    • Fix typos
    • Add comments
    • Clean up code
    • Add new features

Read more about contributing.

Requirements

You will need the following things properly installed on your computer.

Local development

  • Clone this repository git clone https://github.com/NYCPlanning/labs-bbl-list-generator.git
  • Navigate to the project directory and start a local webserver
    • Python 2 cd labs-bbl-list-generator && python -m SimpleHTTPServer 8000
    • Python 3 cd labs-bbl-list-generator && python -m http.server 8000
  • Open the site in your browser at http://localhost:8000

Architecture

This is a simple HTML/CSS/JS frontend mapping tool that interacts with NYC PLUTO data hosted on a Carto server. The client-side mapping technology is mapbox GL JS. The Carto server provides vector tiles for NYC's MapPLUTO dataset, and also handles the file downloads based on the user's selection.

Deployment

Deploy with dokku: Create git remote dokku if you haven't already git remote add dokku dokku@{domain}:lotselector. Push master git push dokku master

MapPLUTO Block Labels

mappluto_block_centroids dataset was created to handle labels for the blocks. This is a bit involved as it's a complex query and carto may timeout, so we had to run the code below by borough, save each result as a new dataset, and UNION ALL them together into a new block_centroids dataset. Query for posterity/maintenance:

SELECT ST_Centroid(ST_Union(the_geom)) as the_geom, block, borocode FROM planninglabs.mappluto
WHERE borocode = '1'
GROUP BY block, borocode

The above technique ran into issues with invalid geometries in Queens. We have requested that this block centroids dataset be a routine product of the MapPLUTO workflow, but until then, you may need to use ST_MakeValid() when using the above SQL to manually build the centroids table.

Contact us

You can find us on Twitter at @nycplanningtech, or comment on issues and we'll follow up as soon as we can. If you'd like to send an email, use [email protected]

About

A simple map-based tool for selecting multiple NYC tax lots and downloading a CSV or shapefile of their PLUTO data

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published