Leaflet.DistortableImage
Leaflet.DistortableImage copied to clipboard
Discussion and Q&A "MapKnitter Lite Outreachy project"
Hi all :wave: This is a discussion issue for the "MapKnitter Lite: fetch images from Internet Archive" Outreachy winter 2022 project. If you have any questions about the project or any of the tasks listed please leave a comment below. This is specifically a discussion issue for the project details. If you have general questions about outreachy or contributing period please use #1131.
The original idea can be found here and the project progress here (feel free to use it for reference but please lets keep the outreachy project questions on this current issue as #998 is a planning issue).
Thanks so much for your interest! and we are excited to have a chance to work with you :heart: :heart: .
Improve MapKnitter Lite for mapmaking with aerial photos as a lightweight web service
Tasks:
- When opening a map, detect a key like "texas-barnraising" from a longer URL like https://archive.org/details/texas-barnraising
- Add a geocoding search box (where you type a location and it moves the map view) to the demo so upon creating a map users can navigate to a specific place
- Add a “drag image onto page to add” feature to the Leaflet.DistortableImage demo so people can import multiple images into maps in the demo at https://publiclab.github.io/Leaflet.DistortableImage/examples/export.html
- Allow current map state (like a "save game" button) to be exported to a downloadable “mapknitter-saved.json” format (see https://github.com/publiclab/image-sequencer-app#usage for possible JSON format and https://gis.stackexchange.com/q/298808 / https://geojson.org/ for official GeoJSON standard)
- Add local saving of maps, via localStorage (may be limited by filesize?) so you don’t lose your work when you refresh the page (using same format as “mapknitter-saved.json”)
Stretch goals:
- local full-res map exporting: 3 possible approaches:
- switch to Ruby exporter in exporting demo: https://github.com/publiclab/Leaflet.DistortableImage/issues/751 (maybe easiest, although it means you’d have to find how to send the local images to the remote exporter)
- rework the JS exporter for local use: https://github.com/publiclab/image-sequencer-app (challenging to rework server-side multi-threaded Node code)
- or use the existing webgl-distort individual image export (https://github.com/publiclab/Leaflet.DistortableImage/#full-resolution-download) and stack them into one giant image using https://github.com/nodeca/pica (hard but relatively straightforward)
Hello @jywarren, (@cesswairimu @TildaDares) I'm an Outreachy applicant, here to help improve Mapknitter. I'm a frontend web developer skilled in Javascript and Reactjs among others, I noticed there are some unchecked tasks in 998, I would like to work on them with your guidance.
I am also an outreachy applicant and want to contribute to the project. I am a frontend developer (React JS) but this I am a newbie to open source contribution and I would appreciate if I am guided.
Hello everyone, I am an Outreachy applicant. I am interested in this project. I have the knowledge of HTML, CSS, JavaScript and Vue. Please advise what the next step I need to do.
@yukiyuli Hello there, welcome to the community, assuming you've gone through the necessary docs, you can start by requesting to be assigned to an issue here, while you get familiar with the codebase. Cheers
Hello again, @cesswairimu I'm also interested in 998, with the resource @jywarren linked to the geocoding search box task, I checked through I'd like to suggest this plugin, for that task, with some guidance I would also like to work on the task.
Hi all, info on the next steps can be found #1131. Thanks
@7malikk the unchecked tasks on #998 are the tasks that most will be worked on during the internship period. The task you mentioned on plugin, it may be a bit of a discussion before we can settle on a plugin / an approach. You could go through the other tasks though and if you can see a sub-task that can be worked on independently and is straight-forward, you can open a new issue for the subtask you are free to give it a try/ start a discussion. Thanks
@cesswairimu Oh, alright thanks a lot for the feedback, I'll check for a straightforward task.
Hi @cesswairimu I’ve gone through the issue tasks and they’re quite interesting and compelling I think the first task can be achieved using regex to detect keys in the url The second seems the easiest to me, to create a search box and style it and use the input value on click or on key enter to navigate the map The third task of drag image onto page to add got me wondering what if user is using a mobile device to access the map The fourth tasks seems similar to the 2nd one with a download to download the map’s nodes position and cm_per_pixel in a JSON format The last task with the local storage, I think an issue we’d face is what happens if a users local storage becomes full?
Thank you for your ideas @leilayesufu -- regex is a good idea. Should there be a whole function to parse out keys in the URL?
@jywarren @cesswairimu regarding this comment. What is the goal of this task When opening a map, detect a key like "texas-barnraising" from a longer URL like https://archive.org/details/texas-barnraising