Plots2: Outreachy Project Recap: summary, planning & discussion

Created on 4 Feb 2020  ·  35Comments  ·  Source: publiclab/plots2

Completed tasks

Plots2

  • Map layer permalinks get overwritten on page open (issue #6889) PR#293
  • Add a zoom:xx power tag for map zoom along with lat and lon when saving location #7019 PR #7020
  • Enable embedded maps in wiki pages, notes and questions
  • Add prompt to Dashboard (/dashboard) to add user location, if user doesn’t have a location set.
  • Fix location input on /people/ #5882 PR https://github.com/publiclab/plots2/pull/6895
  • Fix location tagging in user profiles PR #6886
  • In /map/ create space for the footer #7048
  • Use zoom:xx tag in lead and sidebar maps #7078
  • Get permalinks on /map/wiki_slug#zoom/lat/lon pages as you drag
  • Add “View map” button to geotagged page sidebars, opening /map/SLUG for wikis, and /map#zoom/lat/lon permalink for notes IN #7061
  • Make /map/wiki_slug routes that source lat/lon/zoom from matching wiki page #7061
  • Add tests for /map/ IN #7061
  • Redirect /maps to /map, leave /archive as archive IN #7061

Update 'new post' location form:

Project: Redesign of location popup modal

Testing:

  • Fix New system tests fail due to timing issues #6904 PR #6951

PL.Editor

LBL

LBLD

  • Fix google api test errors in LBLD PR#95

LEL

Embed

  • Work on embed feature PR#296
  • Make domain name as a settable option defaulting to the gh-pages PR#307

New Layers Menu

  • Replace leaflet layer control in the demo with the layers browser menu from the mockup in #232 PR#320
  • Display new layers menu when instantiating LEL with one liner code #347 PR#353
  • Add media queries for layers menu for screen size 235x300 PR#378
  • Collect layer metadata PR#317
  • Collect urls for "requests" from layers if they are open to community submissions #138 PR#317
  • Implement the report functionality on the layers browser menu for layers that accept reports like OdorLog PR#320
  • Add a contribute button to osm #337 PR#345
  • Track the bounding box of each layer, and display only those which intersect with current view #117 PR#320
  • Make layers without bounds to display in all views instead of using hardcoded bounds #117 PR#332

New layer alert

  • Display "new items" mark in Layers menu when you enter an area with a new layer #133 PR#341

Minimal mode

  • Implement minimal mode as discussed in issue #123. PR#356
  • Show a button to toggle between default mode and minimal mode. PR#356

Search feature

  • Search not open by default but behind a magnifying glass icon that pops open PR#326
  • Implement a search functionality to search for a location to re-center upon with a search button and autocomplete geocoder(discussed in #134) PR#326

Layer changes

  • Implement changes in fractracker_mobile layer #87) PR#330
  • Include Unearthing layer to the demo page PR#352
  • Get PLpeopleLayer working in LEL PR#361

Example/demo pages

  • Display notice on top of map in the demo page PR#309
  • Clone demo page to embed.html so that only the embed.html shows the notice and points to the demo page in its embed code PR#311
  • Add demo with multiple maps in a single page PR#356

LEL basic usage changes

  • Fix active base layer selection PR#300
  • Add 'display' parameter to show specific layers in LEL PR#353
  • Other new options/parameters include baseLayers, simpleLayerControl, addLayersToMap, and hostname.

Documentation

  • Make layer names listing in README and layers hash strings consistent PR#315
  • Write documentation for new layer menu control PR#343

Testing

  • Write tests for embed control PR#314
  • Write tests for layer browser PR#329
  • Write tests for minimal dots view PR#356
  • Write tests for oneliner/basic implementation PR#397

Refactor/clean up

  • Reformat/clean up code PR#303
discussion outreachy planning

Most helpful comment

Hey, i have reviewed the above PR's :)

@crisner , can you point me to the PR where you have integrated the cypress. Thanks!!!
Just a heads up -> I am planning to work on integrating Cucumber tests to cypress soon. This will make LEL more awesome 😄

All 35 comments

Bugs Fixed

Plots2

LBL

  • Slider in LBL does not update when map is used to zoom in and out #230
  • Fix location saved as "Location unavailable" #232
  • Fix Google API warning in tests in LBL #233

LEL

  • Fix active base layer selection PR#300
  • Embed code URL has duplicated text PR#340
  • Fix error when baseLayers option is not added PR#351
  • Unearthing demo not visible in publiclab.org #349 PR#352
  • Fix PLpeopleLayer test failures in LEL PR#358
  • Fix missing layers in layer menu on refresh PR#375

Tasks posted for FTO/GCI

  • FTO: Change script path in map dependencies to match with LEL #6978 (_repo: plots2; status: completed_)
  • GCI: Map covers Publish button #367 (_repo: publiclab editor_)
  • GCI: Make map instructions open in new window #366 (_repo: publiclab editor_)
  • GCI: New post form goes off-screen at small screen sizes #6970 (_repo: publiclab editor_)
  • FTO: Make title on /post/ full width #6979 (_repo: plots2; status: completed_)
  • FTO: Add documentation on using embed control #305 (_repo: LEL; status: completed_)
  • FTO: Update usage of hash library in documentation #304 (_repo: LEL; status: completed_)
  • FTO: Edit documentation for using Windrose layer in readme.md #322 (_repo: LEL; status: completed_)
  • FTO: Add hover style to all btn-outline-secondary buttons #7051 (_repo: plots2; status: completed_)
  • FTO: Remove incorrect color and extra space from button on Profile #7050 (_repo: plots2; status: completed_)
  • FTO: Add prompt to Dashboard (/dashboard) to add user location, if user doesn’t have a location set (_repo: plots2; status: completed_)
  • FTO: Change hover color on spam moderate buttons on admin dashboard #7083 (_repo: plots2; status: completed_)
  • FTO: Add hostname value to display the correct embed code #7217 (_repo: plots2; status: completed_)
  • FTO: Top map only shows for tag place and not place:xx #7148 (_repo: plots2; status: completed_)
  • FTO-candidate: Invert button isn't making a dark background (_repo: community toolbox; status: pending_)
  • FTO: Wiki page with place:xx tag shows two maps #7149 (_repo: plots2; status: completed_)
  • FTO: Prevent creating undefined layers-sub-list when the consecutive layer is not a group #333 (_repo: LEL; status: completed_)
  • FTO: blurred:true not saved with location #7120 (_repo: plots2; status: pending_)
  • FTO: Add 'Places' or 'Regions' (/map) to navbar #7071 (_repo: plots2; status: pending_)
  • FTO: Add prompt to Dashboard (/dashboard) to add user location, if user doesn’t have a location set #7263 (_repo: plots2; status: completed_)
  • FTO: Add location modal script to dashboard #7266 (_repo: plots2; status: pending_)
  • FTO: Remove LEL embed button from inline maps #7230 (_repo: plots2; status: completed_)
  • FTO: Fix missing embed icon #7308 (_repo: plots2; status: completed_)
  • FTO: Fix layer control not loaded on map page #7344 (_repo: plots2; status: pending_)
  • FTO: Prevent use of the same default tile layer for multiple maps #363 (_repo: LEL; status: completed_)
  • FTO: Add search control in one-liner code #369 (_repo: LEL; status: pending_)

Tasks left

_Remaining tasks from the checklist here https://github.com/publiclab/plots2/issues/6887#issuecomment-561287047_

  • Write UI tests
  • Display optional legends for each layer #103
  • Stop displaying spinners if a layer fails to load for 10 seconds (issue #290)
  • Zoom in on map based on user location using geolocation.(wonder if this is useful as maps are displayed based on location entered by the user in plots2.) :grey_question:
  • Implement a help functionality

    • Display option for users to file bug reports with the button directing users to a bug issue template

    • Option to request new layer that directs to an issue template. -> Layer submission process, per-layer metadata #135

    • An option to display information about the different elements in the map's UI(may be helpful to new users) may be as a modal or a simple faq or as walkthrough tooltips that can be skipped.

  • Implement a features menu that can toggle other elements in the map's interface individually(except layers menu) from view.(Not sure about the usefulness of this functionality other than having 'simple' and personalized interface but just putting out here as this seemed like a good idea at the time)
  • Create a function to make adding layers easier _already in progress elsewhere as mentioned in #276_

    • Reduce redundant layer code. A member is working on a plugin that helps avoid repetitive code when adding new layers which is mentioned in #276. We could try to use this.

  • Standard methods for each layer like layer.show() layer.hide() layer.isVisible() #251
  • Create a layer name aggregator function #253
  • Create an option to toggle overlapping marker spiderfier feature for individual layers

Plots2

Remaining tasks from https://github.com/publiclab/plots2/issues/6801 and https://github.com/publiclab/plots2/issues/6993

  • Project: Get notes, wikis and people showing on /map/ https://github.com/publiclab/plots2/pull/7545

    • Use LEL PLpeople layer in /people/ map

    • Use LEL PLpeople layer in inline maps

  • get popups showing title, link for each wiki, note, and question - on all maps, redesign popups
  • add "Places" or "Regions" (/map) to the navbar - done elsewhere
  • make “#” link in grey appear on wiki page popups that show /map/SLUG permalinks
  • add a “Add to map +” button on /map/… pages to add a note, question or wiki at that location (go to a selection page between these options, at /post/choose?tags=lat:10,lon:10 -- preserving params!)
  • research why PLpeople layer is so slow to load markers https://github.com/publiclab/plots2/issues/7556

Tasks awaiting review/feedback

  • Edit documentation in README for more clarity #354 PR#367
  • Fix duplication of jquery script tags PR#373
  • Refactor code in layers to replace jQuery with XHR PR#383
  • Sidebar is interfering with full-width inline maps PR#7425
  • Out of extents layers are not removed from the map when hash is set to false #379 PR#380

Tasks in progress

plots2

  • get popups showing title, link for each wiki, note, and question - on all maps, redesign popups
  • make “#” link in grey appear on wiki page popups that show /map/SLUG permalinks
  • add a “Add to map +” button on /map/… pages to add a note, question or wiki at that location (go to a selection page between these options, at /post/choose?tags=lat:10,lon:10 -- preserving params!)

LEL

  • Add people layer explanation in browser menu
  • Fix inline map baselayer not showing correctly #376
  • Combine layer metadata into a single file #371

Tasks to finish up the completed tasks

_We may need to prioritize these over the others_

Plots2

  • Check media queries for layers menu on the LEL instances
  • Testing - Tests for multiple inline maps - [_Priority: high_]

LEL

  • Fix inline map baselayer not showing correctly https://github.com/publiclab/leaflet-environmental-layers/issues/376 _in progress_ - [_Priority: high_]
  • New Layers Menu - [_Priority: high_] Combine layer metadata into a single file https://github.com/publiclab/leaflet-environmental-layers/issues/371 (_in progress_)
  • New layer alert - [_Priority: low_] It only displays the number of new layers now. Should we also highlight them when the user expands the layers menu similar to the image below?
    image

  • Search Feature - [_Priority: high_] - We have the search feature only in the demo file. It needs to be included in the one-liner LEL basic usage code. There is an open PR on an FTO for the same awaiting review/feedback.

  • Documentation - [_Priority: high_]

    • Reordered and edited existing readme file _awaiting review/feedback_

    • Combining json files _in progress_

    • Linking sections of the layer details from json to the layer name in the readme file _not started_

  • Testing - [_Priority: high_]

    • Tests need to be added to the one liner implementation #397

    • Tests may be needed for custom implementation in demo file

    • Tests need to added for layers that don't have them

@nstjean, I have narrowed down some tasks here https://github.com/publiclab/plots2/issues/7432#issuecomment-581877979 and marked high priority so that we can focus on completing them first. For tests in LEL I think we should prioritize testing for the one-liner code first. What do you think? Any other tasks that need to be under this list especially in plots2?

New layer alert - [Priority: low] It only displays the number of new layers now. Should we also highlight them when the user expands the layers menu similar to the image below?

Moved the low priority task from here to here https://github.com/publiclab/leaflet-environmental-layers/issues/334.

Yes I agree, I think testing for the one liner code first would be good because that's pretty much what we are using in plots2 - or will be using shortly. I'll go through it all and see if anything needs to be added to the high priority list.

I have updated the Plots2 list above for what's left to do for this project.

Awesome :rocket:

cc: @sagarpreet-chadha

Just Wowoww :)

I finally got the tests done! This is so exciting. :laughing: https://github.com/publiclab/leaflet-environmental-layers/pull/397 - ready for review

I had to fix a bug with the initialized param values: https://github.com/publiclab/leaflet-environmental-layers/pull/396 (merged)

I also did a little clean-up while I was in there: https://github.com/publiclab/leaflet-environmental-layers/pull/401 - ready for review

Now all I need is for LEL to be bumped so I can finish in plots2. Here's the drafted release:
https://github.com/publiclab/leaflet-environmental-layers/releases/tag/2.2.1

Other tasks in the priority list as discussed here https://github.com/publiclab/leaflet-environmental-layers/issues/399#issuecomment-584999376 _[Awaiting feedback]_

1) Once a layer is added to the map let the layer be visible both on the map and the layer menu but keep the layer from requesting data if the map is not intersecting with the layer's extents. _[Priority: high]_

2) The layers that are not displayed on the map will be filtered from the layer menu. We could add a feature that lets the user decide if they want to keep the layers filtered or if they want everything to be listed. _[Priority:low]_

3) We have an alert that notifies users of new layers available. We may have to highlight the new layers as well so the users can locate the new layers easily. _[Priority: mid]_

Tests for the demo page ready for review: https://github.com/publiclab/leaflet-environmental-layers/pull/400

Update

These tasks that were awaiting feedback or in progress in https://github.com/publiclab/plots2/issues/7432#issuecomment-581876031 have been completed/merged

  • Edit documentation in README for more clarity #354 PR#367
  • Fix duplication of jquery script tags PR#373
  • Sidebar is interfering with full-width inline maps PR#7425
  • Out of extents layers are not removed from the map when hash is set to false #379 PR#380
  • Fix sidebar map errors #7381
  • Fix inline map baselayer not showing correctly #376 - This has been addressed in #7404

Adding this here to include to the list of priority tasks.

  • Show a "didn't load" broken icon next to a layer if it fails to fetch data #410

PRs ready for review/merge:

  • Combine layer metadata into a single file PR#385
  • Improve test timings in current cypress tests PR#412
  • Improve layer menu's filtering and layer displaying features PR#409
  • Write tests for eonet fires layer PR#407

cc: @sagarpreet-chadha, @cesswairimu

PR Ready for review/merge: https://github.com/publiclab/plots2/pull/7545
@cesswairimu @SidharthBansal

Hey, i have reviewed the above PR's :)

@crisner , can you point me to the PR where you have integrated the cypress. Thanks!!!
Just a heads up -> I am planning to work on integrating Cucumber tests to cypress soon. This will make LEL more awesome 😄

Thanks!!

Just a heads up -> I am planning to work on integrating Cucumber tests to cypress soon. This will make LEL more awesome

Awesome! Can't wait! 🎉 😄

can you point me to the PR where you have integrated the cypress.

This is the PR where I set up Cypress #400 and this is the PR where I set cypress up with Travis CI #403

PR ready for review/merge in LBLD: https://github.com/publiclab/leaflet-blurred-location-display/pull/96

PR ready for review/merge in LEL: https://github.com/publiclab/leaflet-environmental-layers/pull/401

@cesswairimu @sagarpreet-chadha @SidharthBansal

I will review today. Thanks

PR#417 and PR#419 ready for review and feedback.

PR#426 ready for feedback and review.

PR https://github.com/publiclab/leaflet-environmental-layers/pull/430 ready for feedback and review

PR https://github.com/publiclab/plots2/pull/7562 is erroring in travis and I'm not sure why.

I do need this PR https://github.com/publiclab/leaflet-blurred-location-display/pull/96 in LBLD do get merged and a new version published in NPM.

The following PRs are ready for review/feedback:
#438
#432
#436
#434
#428
#424

I have added tests for all layers other than those that use tiles.

This is some incredibly epic work!!!! Congratulations to you both and many thanks! I am going through these today. This is so awesome!!!

Going through last batch of @crisner's PRs now! Thanks!

OK, leaving needs-rebase label on some PRs, but looking fantastic. Thanks!!! https://github.com/publiclab/leaflet-environmental-layers/labels/needs-rebase

Please leave the label on OR add a new ready-to-merge label. Or merge them yourself if you can, they all look good to me!!!

And just a clarification on https://github.com/publiclab/leaflet-environmental-layers/pull/424 but it seems OK to me as-is!

And just looking now to see where any remaining plots2 PRs or issues are, so we can get the /map/ and /map/____ pages running! Sorry for lots of chatter today, it's my first day back!

I see https://github.com/publiclab/plots2/pull/7545 -- very awesome!!!

Closing this up! Thank you!!!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jywarren picture jywarren  ·  69Comments

jywarren picture jywarren  ·  85Comments

sagarpreet-chadha picture sagarpreet-chadha  ·  152Comments

cesswairimu picture cesswairimu  ·  115Comments

SidharthBansal picture SidharthBansal  ·  87Comments