Test exercise for Intercom
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Henry Jameson 8c40e4e322 small notice 6 years ago
lib improved logging and added bad input handling 6 years ago
.eslintrc.js Initial Commit 6 years ago
.gitignore Initial Commit 6 years ago
README.md small notice 6 years ago
index.js fix --home not working. found a known bug in 3rd party lib, so sad. 6 years ago
package-lock.json Initial Commit 6 years ago
package.json repo url 6 years ago



This tool by default uses OpenRouteMap API to fetch route distance between points with fallback to great-circle computation. It can be disabled with --no-orm option.


  • NodeJS v10.6
  • NPM 6.1.0


  1. cd into repository's directory
  2. npm install


execute ./index.js or node index.js. Usage is ./index.js --help

  Usage: index [options]


    -V, --version            output the version number
    --customers [url]        URL for customers list. (default: https://s3.amazonaws.com/intercom-take-home-test/customers.txt)
    --home [home]            "Home" location - distances to customers will be calculated against it. Please prepend negative values with space, like so: --home " -1,2" (default: -6.257664, 53.339428)
    --no-orm                 Disables fetching distance via OpenRouteMap.
    --direct-routes          Fall back to simple calculation if ORM tells there are no routes.
    -d, --distance [meters]  Maximum exclusive distance in meters (default: 100000)
    -h, --help               output usage information