Andrea Giammarchi May 16 Updated on May 21, 2018
What I built
Imagine you'd like to meet up with your friends, but you are in an open and maybe crowded space, so that beside sharing your own location, you'd love to also see where is everyone else, to eventually converge into a single place on a map without needing to install any native app.
This is Geo Share, a PWA where you can either be the host, or simply a guest of any other person that shared a unique URL with you.
You can become a host simply visiting geoshare.now.sh.
Once you've found yourself on the map, and clicked on top right 👥 icon, you'll have in your device clipboard a unique URL you can paste to your friends.
That's it, anyone using that link will see everyone else aware of such link and, as long as you are using the app, also see you as host of the group (dark icon).
Link to Code
How I built it
- Zeit now-cli for the easiest deployment ever!
- Leaflet library for the map on top of OpenStreetmap tiles
- Nominatim for reverse geocoding on longpress (to share a tooltip from the host)
- Pusher Channels API for real-time updates and communications
- NoSleep utility to (hopefully) prevent device from sleeping
- hyperHTML for layout render and updates
- lightdown to bring a fast, safe, and useful Markdown flavour to each message
Common PWA techniques such ServiceWorker and a
manifest.json are in place too.