Coder Social home page Coder Social logo

google_directions's Introduction

google_directions

This NPM Module is the simplest interface for asynchronously querying the Google Directions API (https://developers.google.com/maps/documentation/directions/intro) via Node.

Installation

npm i google_directions

Get a Google API Key

https://console.developers.google.com/flows/enableapi?apiid=directions_backend&keyType=SERVER_SIDE

  • Select/Create a Project
  • Enable Directions API
  • Generate a Key (See the Credentials Tab)

Usage

Include this. Here are the parameter details.

var map = require('google_directions');

var params = {
	// REQUIRED
	origin: "",
	destination: "",
	key: "",

	// OPTIONAL
	mode: "",
	avoid: "",
	language: "",
	units: "",
	region: "",
};

API Methods

There are six main methods to choose from.

Raw Google Direction API Response (JSON):

// get the raw Google Directions API response as JSON object
map.getDirections(params, function (err, data) {
	if (err) {
		console.log(err);
		return 1;
	}
	console.log(data);
});

Navigation Steps (JSON):

// get navigation steps as JSON object
map.getDirectionSteps(params, function (err, steps){
	if (err) {
		console.log(err);
		return 1;
	}

	// parse the JSON object of steps into a string output
	var output="";
	var stepCounter = 1;
	steps.forEach(function(stepObj) {
		var instruction = stepObj.html_instructions;
		instruction = instruction.replace(/<[^>]*>/g, ""); // regex to remove html tags
		var distance = stepObj.distance.text;
		var duration = stepObj.duration.text;
		output += "Step " + stepCounter + ": " + instruction + " ("+ distance +"/"+ duration+")\n";
		stepCounter++;
	});	
	console.log(output);
});

Total Distance (String):

// get total distance as string
map.getDistance(params, function (err, data) {
	if (err) {
		console.log(err);
		return 1;
	}
	console.log(data);
});

Total Duration (String):

// get total duration as string
map.getDuration(params, function (err, data) {
	if (err) {
		console.log(err);
		return 1;
	}
	console.log(data);
});

Starting Address (String):

// get the starting address as string
map.getOriginAddress(params, function (err, data) {
	if (err) {
		console.log(err);
		return 1;
	}
	console.log(data);
});

Destination Address (String):

// get the destination address as string
map.getDestinationAddress(params, function (err, data) {
	if (err) {
		console.log(err);
		return 1;
	}
	console.log(data);
});

Parameters

History

Still currently maintained and updated.

  • 0.6.0

Credits

Google

License

MIT License

google_directions's People

Contributors

ipalibowhyte avatar

Stargazers

 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.