dkuttner / drop-n-chop

Browser-based GIS Editor. You drop. We chop.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

Drop 'n Chop

You drop. We chop.

Drop n' Chop Logo

Drop 'n Chop (DNC) is a browser-based GIS powered by Mapbox.js and Turf.js. DNC is currently a proof-of-concept and explores three hypotheses:

1. GIS can be data-first, not operation-first.

GIS software is complex. And rightly so! The vast number of spatial operations and analyses make for an incredibly steep point of entry for a user. Without having a single shapefile prepared there are multitudes of buttons and operations available to you. Operations come first. Data is secondary.

Your data should dictate what operations are available. DNC aims to only show what's possible with the data that you've loaded. If you upload a single polygon, you can add a buffer to it. But you can't union it to anything, so why allow the user to go through the process of setting up a union?

2. GIS doesn't require a server.

By using HTML5 FileReaders and some special JavaScript for processing file types, we are able to read file binaries in the browser. This allows us to bypass a server and load GeoJSON files straight into our map. With this and the advancements of Turf, we can run spatial operations and download them in a light-weight manner.

It's important to recognize that a huge amount of data will probably require a server. But we are talking small things here right now.

3. GIS is open.

More often than not, people move from proprietary software to open source software because they "can't afford it any longer" or "their student license ran out." You shouldn't have to be able to afford giant, bulky software to do simple things with your data. DNC is a project made by folks who have mumbled the above more times than Arc a GIS crashing in the middle of a project. Here's to our contributors!

buffer union sf east!

Who?

All of this work is made possible by CUGOS, an open-source geo community based in Seattle.

Contribute!

  1. Install Grunt. Working on Drop-n-Chop requires a few tools. We are using Grunt for our task running and build process. You can install the Grunt CLI with npm:npm install -g grunt-cli
  2. Clone the repository. Once grunt has been installed successfully, you can clone the repository or your own fork and cd into the directory. git clone git@github.com:YOUR-GITHUB-USERNAME/drop-n-chop.git and cd drop-n-chop
  3. Install dependencies by running npm install
  4. Build & serve the application with grunt. This will create a watcher as well that will lint your JS in the /src directory. You can access the application at localhost:8000. Note: If you'd like to build the minified version of the codebase (as is used in production), use grunt prod.
  5. Deploy the application to Github Pages with grunt deploy. The site should become available at https://YOUR-GITHUB-USERNAME.github.io/drop-n-chop.

NOTE: Things are moving very quickly with DNC right now. We are still continuing to build out and refactor the architecture of the application. If you want to read more about our decision-making process take a look at some of our meeting notes in the wiki.

Once you drop the chop don't stop.

About

Browser-based GIS Editor. You drop. We chop.

License:MIT License


Languages

Language:JavaScript 93.3%Language:CSS 6.1%Language:HTML 0.6%