#106 How to use gem Geocoder, GPS coordinates, distance calculation, map markers
27/01/2023
Free
In this episode we will use gem Geocoder to:
- find for GPS coordinates (latitude and longitude) based on an address;
- calculate distances in miles and kilometers;
- search for locations within range (near);
- search for locations within location (nearbys);
- use Mapbox API to display a static map
Episode source code: https://github.com/corsego/106-gem-geocoder/commit/ca4485399e9b7d12e1ffde807eec3970eb314068
Text walkthrough: https://blog.corsego.com/gem-geocoder-ruby
Mapbox API: https://docs.mapbox.com/playground/static/
0:00 latitude and longitude coordinates
01:00 geocoder search, calculations
3:25 scaffold Location, seeds
4:40 Geocode existing addresses
6:30 Search Locations NEAR (console)
7:35 Search Locations NEAR (form, controller)
9:35 Configure search NEAR distance
10:31 Search NEARBYS (locations close to current location)
11:55 Distance between locations
12:43 use KILOMETERS, not MILES
14:00 Mapbox Static Maps
17:10 Works! DEMO
17:31 re-geocode if address changed
20:01 Summary
1
Sign in to join the conversation
Featured in playlists
![#106 How to use gem Geocoder, GPS coordinates, distance calculation, map markers](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTgxMywicHVyIjoiYmxvYl9pZCJ9fQ==--fa5854971fac389163e676e7b0b7e156f2cc91a3/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
![#107 How to display locations on a map with Mapbox API and gem Mapkick like AirBnB](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTgzOSwicHVyIjoiYmxvYl9pZCJ9fQ==--40f3c2cf7034cb0bfd4b3cf58b48de87cf84a0c1/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
![#108 How to use the Browser Geolocation API with Rails](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTg3MSwicHVyIjoiYmxvYl9pZCJ9fQ==--dd678d29d1065aaf26bb39c50fb4f1c877d75ad1/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
Maps & Geolocation
Recommended based on what you are watching now
![#10: Bootstrap, Friendly ID, ExceptionNotification](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTc2OSwicHVyIjoiYmxvYl9pZCJ9fQ==--786747caef6fd0c92b9a22a6dc7cbb7a9a016322/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
53:20
#10: Bootstrap, Friendly ID, ExceptionNotification
26/06/2021
Free
![#16 Gem ActsAsVotable - upvote and downvote with AJAX](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTc2MCwicHVyIjoiYmxvYl9pZCJ9fQ==--9330e4d2bd925c5ed36ec34a374fa1bac91ef21e/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
25:04
#16 Gem ActsAsVotable - upvote and downvote with AJAX
13/04/2021
Free
![#136 Highlight link to current page](https://superails.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTg5MSwicHVyIjoiYmxvYl9pZCJ9fQ==--d88cf3eb6db2f3ed6282c94410317c71ffbd45be/eyJfcmFpbHMiOnsiZGF0YSI6eyJmb3JtYXQiOiJqcGciLCJyZXNpemVfdG9fbGltaXQiOls0MDAsNjAwXX0sInB1ciI6InZhcmlhdGlvbiJ9fQ==--2d7cd3a4d9675c7f4c17dad7856d799792bd3595/maxresdefault.jpg)
14:06
#136 Highlight link to current page
10/07/2023
Free
1