Git Product home page Git Product logo

distance-calculator's Introduction

distance-calculator

Uma API que calcula a distância entre duas ou mais localizações.

Ferramentas utilizadas

  • NodeJS
  • ExpressJS
  • Typescript
  • Jest
  • prettier
  • faker

Rodando localmente

  1. Clone o repositório
git clone https://github.com/Deltinha/distance-calculator
  1. Navegue até a pasta e instale as dependências
cd distance-calculator && npm install
  1. (OPCIONAL) Seguindo o arquivo .env-example como exemplo, crie um arquivo .env e configure a varívavel de ambiente PORT. Caso pule esse passo, a porta 4000 será usada por padrão.
touch .env && echo 'PORT=4000' >> .env
  1. Inicie a aplicação em modo desenvolvimento
npm run dev

Importante

Para usar a aplicação, é necessário ter uma API key da Google Maps Platform e um projeto na Google Cloud com Geocoding API habilitado. Saiba como obter uma key acessando https://developers.google.com/maps/documentation/geocoding/get-api-key

Documentação

GET /distance?key=YOUR_API_KEY

Retorna a distância dois a dois, entre todas as localizações. Também informa as localizações mais distantes e mais próximas. Essa rota espera um array JSON contendo as localizações das quais serão calculadas as distâncias. A API aceita vários formatos de endereço. Certifique-se de substituir YOUR_API_KEY com a sua API key

Exemplo de entrada:

[
  "1600 Amphitheatre Parkway, Mountain View, CA",
  "Av. Rio Branco, 1 Centro, Rio de Janeiro RJ",
  "manila",
  "rua desembargador berilo mota irararé"
]

Exemplo de resposta:

{
	"farestDistance": {
		"addresses": [
			"Av. Rio Branco, 1 Centro, Rio de Janeiro RJ",
			"manila"
		],
		"distance": "18724.38 km"
	},
	"shortestDistance": {
		"addresses": [
			"Av. Rio Branco, 1 Centro, Rio de Janeiro RJ",
			"rua desembargador berilo mota irararé"
		],
		"distance": "1979.39 km"
	},
	"allDistances": [
		{
			"addresses": [
				"1600 Amphitheatre Parkway, Mountain View, CA",
				"Av. Rio Branco, 1 Centro, Rio de Janeiro RJ"
			],
			"distance": "11043.79 km"
		},
		{
			"addresses": [
				"1600 Amphitheatre Parkway, Mountain View, CA",
				"manila"
			],
			"distance": "13247.55 km"
		}, ...
	]
}

distance-calculator's People

Contributors

deltinha avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.