Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Planning overview (revised!) #134

Open
11 of 46 tasks
jywarren opened this issue Mar 8, 2019 · 22 comments
Open
11 of 46 tasks

Planning overview (revised!) #134

jywarren opened this issue Mar 8, 2019 · 22 comments
Labels
break-me-up help wanted Extra attention is needed outreachy planning wontfix This will not be worked on

Comments

@jywarren
Copy link
Member

jywarren commented Mar 8, 2019

This new library is rapidly seeing many new layers, and we need some additional structure to help make the display/management of this amazing data smoother. This would include:

Documentation

Bugs

Structure

image

UI

See mockup above!

Testing


New layers


Takes over for #1


Individual tasks (that try to break down the above items)

  • Try adding a new layer, then a second one, each in a PR. Look for the similarities between layers.
  • Follow the format of this pull request to install a Jasmine test suite, load dependencies, and get “npm test” to pass with a very minimal test: write tests that assert the markers are shown or hidden as in the new example code leaflet-blurred-location-display#52
  • Connect the test to TravisCI using a .travis.yml file
  • Add HTML test fixtures to allow tests to create and initialize a map
  • Expand the test to check for proper map setup, following this example of UI testing: https://github.com/publiclab/leaflet-blurred-location/pull/122/files
  • Identify common functions we could break out to reduce redundancy between layer code.
  • Try making a common function which could be used to reduce redundant code in layers
  • Write a test for this function
  • Refactor layers to use the common function
  • Repeat above for other common functions
  • List out the different information which each layer requires, and create a JSON format for storing it in a file. Look for how we can load this information into using CommonJS syntax, like: require(‘/layers/myLayerName/info.json’)
  • Try making a standard layer type which would make adding new layers of a specific type easier (for example tile, rss, csv, geojson, polygonal, also subtypes like spreadsheet, esri)
  • Develop an improved workflow for incorporating and accepting new layers (a submission template), including a submission form for new layers
  • Try developing a minimal 'dots' based display of all layers, based on "minimal" mode #123
  • Develop a function which scans through available layers to see which overlap with the current map bounds and zoom levels (and expand layer metadata with these new fields if needed)
  • Use above function to hide/show or add/remove layers based on overlap
  • Develop a setting to display new layers for a given map bounds, or to add the layer to the menu but not enable it
  • Develop an event listener to handle new layers being identified, and alert the user somehow Display "new items" mark in Layers menu when you enter an area with a new layer #133
  • Refine/expand per-item popup design (displaying image, description, source, toggle, link, if available)
  • Develop and implement common functions to assign data source fields from layers to specific fields in a popup (like, identifying an image and using it as the popup thumbnail image)
@sidntrivedi012
Copy link
Member

@jywarren The thread looks really nice. Would like to ask that can we write tests in Jest? Its kinda nice and efficient to use for Javascript testing.

@sidntrivedi012
Copy link
Member

You can find more info about jest here - https://jestjs.io/

@avsingh999
Copy link
Member

@sidntrivedi012 I like your thinking but I do not understand Why we use jest for Test because In a test we have to enable all layers like @jywarren open this issue #101 correct me if I am wrong @jywarren @sidntrivedi012
thanks : )

@jywarren
Copy link
Member Author

jywarren commented Mar 11, 2019 via email

@sidntrivedi012
Copy link
Member

@jywarren Sure. Jasmine is great. And it's really a very nice notion to maintain consistency in the project.

@vaarigupta
Copy link

@jywarren I am an outreachy applicant and am interested to work on it. Please assign me this issue to work

@ananyaarun
Copy link
Member

@jywarren , @gauravano I went through the project Extend Leaflet Environmental Layers with new layer menu and layer addition workflow carefully.It looks very interesting to me !! I did start contributing to this repository as well apart from plots2 to try and understand the workflow here.

I have also worked on a project closely related to this previously.
Here is the link https://github.com/ananyaarun/Open-Street-Maps
A map i particularly visualized using leaflet can be seen here
https://ananyaarun.github.io/OSM3/

I would love to apply to this project as well :) Can i have more info in this regard ? Can i record my contribution and experience for this project in the main outreachy website itself ?

Thanks!

@grvsachdeva grvsachdeva added the wontfix This will not be worked on label Mar 24, 2019
@grvsachdeva
Copy link
Member

Hey @vaarigupta, this issue is for Outreachy and so not available for claiming. But, we would love to have your help with other issues of this repo https://github.com/publiclab/leaflet-environmental-layers/issues/. Thanks!

@grvsachdeva
Copy link
Member

I would love to apply to this project as well :) Can i have more info in this regard ? Can i record my contribution and experience for this project in the main outreachy website itself ?

hey @ananyaarun, if you're eligible for raising multiple proposals for a single org, then sure we would love to see your proposal. Yes, please go ahead and mention all the contributions you did in this repo. Thanks!

@vaarigupta
Copy link

Hey @vaarigupta, this issue is for Outreachy and so not available for claiming. But, we would love to have your help with other issues of this repo https://github.com/publiclab/leaflet-environmental-layers/issues/. Thanks!

Ya I am willing to participate in outreachy this year. So please suggest me how can I make contribution?

@grvsachdeva
Copy link
Member

Hey @vaarigupta, I think for being able to raise proposal, you need to solve a issue of this project. So, go through https://github.com/publiclab/leaflet-environmental-layers/issues and start with issues, which looks good to you. We don't have much first-timers-only issues in this project, but I will see if some can be created.

Thanks!

@jywarren
Copy link
Member Author

Hi! Actually there are so many parts of this that we expect it will take more than one Outreachy term to complete, so we are happy to have contributions before then as well! Please feel free to pick out a piece of this and give it a try. I might recommend #156 is mainly the installation of a plugin, so it could make a good self-contained issue to start with!

@ananyaarun
Copy link
Member

@jywarren @gauravano is extending leaflet layers an outreachy project or a gsoc project or both ?
I see it listed under both the outreachy website and this link for gsoc ideas
https://publiclab.org/wiki/gsoc-ideas

@grvsachdeva
Copy link
Member

grvsachdeva commented Apr 1, 2019 via email

@sagarpreet-chadha
Copy link
Collaborator

Added #174 to the list of new layers 🗺 !

@nstjean
Copy link
Contributor

nstjean commented Oct 30, 2019

Where do users go to use this full map and all its possibilities? I know MapKnitter.com uses mapping, but only for one layer. https://publiclab.org/maps/ has environmental layers listed on the map at the top, but it doesn't look the same as it does using the /example/ directory in my dev environment.

Basically, is this used only within PublicLab.org and other of our sites, or is there/will there be a site users can go to create their own maps to share?

@sagarpreet-chadha
Copy link
Collaborator

Hey @nstjean ,
Yes we have done some changes recently and we will soon publish the new version. I dont know if this library is integrated to other websites apart from PL.org and mapknitter.

Yes definately we will work on making a utility that will generate maps with layer and an iframe link that people can use to embed the map on their websites. Thanks!

I hope this helps!

@sagarpreet-chadha
Copy link
Collaborator

Infact very soon i will be working on this similar iframe feature, discussion ongoing here #274

@nstjean
Copy link
Contributor

nstjean commented Oct 30, 2019

Excellent! I understand the plans much better now. :)

@jywarren
Copy link
Member Author

Adding here -- a search box so you can quickly search for locations on the earth would be great! Not open by default but behind a magnifying glass icon maybe, that pops open and then you can start searching.

@crisner
Copy link
Contributor

crisner commented Jan 13, 2020

@jywarren I have checked off a few tasks that had been done recently from the checklist above.

@jywarren
Copy link
Member Author

Awesome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
break-me-up help wanted Extra attention is needed outreachy planning wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

9 participants