Giter Site home page Giter Site logo

node-postcodes.io's Introduction

Postcodes.io - NodeJS Client/Wrapper

JavaScript Style Guide NPM Build Status

An easy to use postcodes.io wrapper for NodeJS.

โ–ถ๏ธ Install

Install the package with npm:

$ npm i node-postcodes.io

๐Ÿ“‹ Usage

const postcodes = require('node-postcodes.io')

Lookup

http://postcodes.io/docs#Postcode-Lookup

// single
let result = await postcodes.lookup('PO123AA')

// batch
let result = await postcodes.lookup(['PO123AA', 'PO123AB'])

// batch (with filter)
let result = await postcodes.lookup(['PO123AA', 'PO123AB'], {
    filter: 'postcode,longitude,latitude'
})

Geo

http://postcodes.io/docs#Geocode-Postcode

Single

//
let result = await postcodes.geo(51.7923246977375,  0.629834723775309)

// with optional params
let result = await postcodes.geo(51.7923246977375,  0.629834723775309, {
    limit: 10,
    radius: 10,
    wideSearch: false
})

Batch

//
let result = await postcodes.geo([
    {
        "longitude": 0.629834723775309,
        "latitude": 51.7923246977375,
        "radius": 1000,
        "limit": 5
    },{
        "longitude": -2.49690382054704,
        "latitude": 53.5351312861402,
        "radius": 1000,
        "limit": 5
    }
])

// with optional params
let result = await postcodes.geo([
    {
        "longitude": 0.629834723775309,
        "latitude": 51.7923246977375,
        "radius": 1000,
        "limit": 5
    },{
        "longitude": -2.49690382054704,
        "latitude": 53.5351312861402,
        "radius": 1000,
        "limit": 5
    }
], {
    filter: 'postcode,longitude,latitude',
    wideSearch: false
})

Random

http://postcodes.io/docs#Geocode-Postcode

let result = await postcodes.random()

Validate

http://postcodes.io/docs#Postcode-Validation

let result = await postcodes.validate('PO123AA')

Nearest

http://postcodes.io/docs#Nearest-Postcode

let result = await postcodes.nearest('PO123AA')

// with optional params
let result = await postcodes.nearest('PO123AA', {
    radius: 1000,
    limit: 5
})

Autocomplete

http://postcodes.io/docs#Postcode-Autocomplete

let result = await postcodes.autocomplete('PO123AA')

// with optional params
let result = await postcodes.autocomplete('PO123AA', {
    limit: 5
})

Query

http://postcodes.io/docs#Postcode-Query

let result = await postcodes.query('PO123AA')

// with optional params
let result = await postcodes.query('PO123AA', {
    limit: 5
})

Terminated

http://postcodes.io/docs#Terminated

let result = await postcodes.terminated('PO123AA')

Outcodes

http://postcodes.io/docs#Show-Outcode

// lookup
let result = await postcodes.outcodes('PO33')
// nearest
let result = await postcodes.outcodes('PO3', {
    limit: 10,
    radius: 10
})
// nearest (lat, lng)
let result = await postcodes.outcodes(51.7923246977375,  0.629834723775309)

// with optional params
let result = await postcodes.outcodes(51.7923246977375,  0.629834723775309, {
    limit: 10,
    radius: 10
})

Places

http://postcodes.io/docs#Place-Lookup

// lookup
let result = await postcodes.places('osgb4000000074553605')

// query
let result = await postcodes.places('Ryde', {
    limit: 10
})

// random
let result = await postcodes.places()

๐Ÿ”’ Testing

Can see test results @ https://travis-ci.org/lcherone/node-postcodes.io, if you want to run them locally, your need install mocha, then run:

$ npm test

ยฉ๏ธ License

The MIT License (MIT). Please see License File for more information.

node-postcodes.io's People

Contributors

lcherone avatar simon-bond avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  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.