distance_api_matrix alternatives and similar packages
Based on the "Geolocation" category.
Alternatively, view distance_api_matrix alternatives based on common mentions on social networks and blogs.
-
topo
A Geometry library for Elixir that calculates spatial relationships between two geometries -
geoip
Elixir library to find geo location information given an IP address, hostname or Plug.Conn -
ip2location
An Elixir library for the IP2Location database -
ipgeobase
Find Russian and Ukraine city by IP address and find country for other country Elixir -
srtm
Query locations for elevation data from the NASA Shuttle Radar Topography Mission -
segseg
Segment-segment intersection classifier and calculator for Elixir
Updating dependencies is time-consuming.
Do you think we are missing an alternative of distance_api_matrix or a related project?
README
Google Distance Matrix API Library for Elixir
This library allows you to obtain the distance and travel times between multiple origins and destinations via various travel methods.
Installation
First, add distance_api_matrix to your mix.exs
dependencies:
def deps do
[{:distance_api_matrix, "~> 2.0"}]
end
and run $ mix deps.get
.
Usage
# Create a travel_list with coords and/or addresses
iex> travels = DistanceMatrixApi.TravelList.new |>
DistanceMatrixApi.TravelList.add_entry(%{origin: "Caen", destination: "Paris"}) |>
DistanceMatrixApi.TravelList.add_entry(%{origin: "21 Rue de la République, 69002 Lyon, France", destination: "60 Rue de Rivoli, 75004 Paris, France"}) |>
DistanceMatrixApi.TravelList.add_entry(%{origin: %{lat: 45.764043, long: 4.835658999999964}, destination: %{lat: 48.856614, long: 2.3522219000000177}})
# Basic call
iex> travels |> DistanceMatrixApi.distances
#with custom options
iex> options = %{mode: "bicycling", units: "imperial", language: "en-US"}
iex> travels |> DistanceMatrixApi.distances(options)
Check an example of the output format here
Options
All options defined in the Google distance matrix documentation are available, such as: mode
key
language
units
etc.
Key :
Set by default if Application.get_env(:distance_api_matrix, :api_key)
is present.
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
Testing
Various tests included, just run;
mix deps.get
mix test
License
Copyright (c) 2015 Thibault Hagler. See the LICENSE file for license rights and limitations (MIT).
*Note that all licence references and agreements mentioned in the distance_api_matrix README section above
are relevant to that project's source code only.