Skip to content

Meeting Notes 04 11 2015

Sam Matthews edited this page Apr 11, 2015 · 2 revisions

This was the first meeting between @alukach, @thebigspoon, and @svmatthews concerning the overall architecture of Drop-n-Chop. Between some recent pull requests we have encountered multiple ways to structure the project and realized a decision should be made sooner than later in order for us to continue moving forward.

The decision came down to two major forks.

  1. using Browserify and rolling our own utility functions, event handlers, selection processes, and working on the interaction between our application and the Leaflet L.Map object.
  2. Using Leaflet as our main framework. There was confusion between the idea of making this project a combination of "plugins" on top of Leaflet, but the real intention for this is to use the framework components that Leaflet comes with and expand upon them when needed.

In the end, we are choosing to go with number 2 by extending the L.Class functionality in the Leaflet codebase. This way we have direct access to the inheritance chain and utilities/mixins Leaflet provides. The master branch has been updated from the leaflet-plugin branch and we will begin moving forward! Below are the notes from @alukach.

General Design Goals

Data first GIS rather than Operation first GIS: The data should dictate which operations are available, rather than selecting data within an operation contextual window.

Milestone:

Create milestone: (0.1 or 1.0?)

  • Support all currently advertised features (those listed in dropdown)
  • Create tests
  • Download data

Leaflet.js

What do you get when you extend from a Leaflet Class? Check out the source.

Best in class plugins:

Geoprocessing Component

What makes up a geoprocessing component:

  • Types Supported (Points, Polygons, FeatureCollection, etc)
  • Number of args of supported
  • Menu Settings
    • Which menu it belongs in (can we support submenus?)
    • How it looks in menu (HTML)
  • Dialog Settings
    • Form components
    • Reorder Layers

Glossary

Terms to be familiar with:

  • UI Components
    • Dropzone: Where to drop files to upload
    • Layerlist: Display of layers
    • Menu: Topbar with dropdowns
    • Mapview Where the map is

Future Features

A dump of possible features for the project:

  • Layerlist
    • View metadata of layers via right-click
      • Source Attribution
        • Filename of uploaded file (if uploaded)
        • Layer name of source layers (if derived from other layers)
    • Toggle layer visibility
  • Menu
    • Only show supported operations based on selection
  • Mapview
    • Dialog support - Some way to allow input into geoprocessing operations
  • Selection
    • Support selection via clicking on polygon
    • Support selection via boundingbox
    • Support selection via attribute