urbanup
TypeScript icon, indicating that this package has built-in type declarations

0.2.0 • Public • Published

Urbanup

Patreon Discord Travis (.org) David node-current GitHub package.json version RunKit

Table of Contents

Introduction

Urbanup is an up-to-date API wrapper for urban dictionary with the aid of axios and ECMAScript 2017's async/await.

Installation

With npm:

$ npm install urbanup

With yarn:

$ yarn add urbanup

Usage

Try me on RunKit
Discord

Simply import the library and use whatever endpoint directly:

const urbanup = require('urbanup') // CommonJS
import * as urbanup from "urbanup" // ES6

urbanup(query[, options]).then(r => /* do something */)

Query

To request a page of definitons from urban dictionary:

const urbanup = require('urbanup') // CommonJS
import * as urbanup from "urbanup" // ES6

var query = 'javascript'

var options // Optional library options

urbanup(query, options).then(definitions => console.log(definitions[0])) // Returns an array of matching definitions
// Schema: https://api.urbandictionary.com/v0/define?page=1&term=javascript

urbanup.query(query, options) // The same as urbanup(query, options)

If you would like the API to return only one definition, you can do:

urbanup.one(query, options).then(r => /* do something */)

Random

To request a random page of defintions:

const urbanup = require('urbanup') // CommonJS
import * as urbanup from "urbanup" // ES6

urbanup.random(options).then(def => console.log(def))

// You can also get the first result only:
urbanup.random.one(options).then(def => console.log(def.permalink))

API Options

Additionally, each method allows you to pass in API options to customise your experience a tad more.

var options = {
    // Decide which page to get. Default is 1
    page: 2,
    // Provide your own callback function to be used instead
    cb: (result) => { return result.data.list },
    // Use your own custom user agent. User agent will always default to your Node.js version and OS name if no agent is provided
    agent: 'My Progamme, contact@example.com',
    // Allows you to apply your own axios options whenever axios is used.
    axiosOptions: {
        // Sets a specific amount of time in milliseconds that axios will wait until the requested server responds.
        timeout: 1000 
        // You can find other axios options at https://github.com/axios/axios#request-config
    }
}

Package Sidebar

Install

npm i urbanup

Weekly Downloads

1

Version

0.2.0

License

GPL-3.0

Unpacked Size

47.8 kB

Total Files

9

Last publish

Collaborators

  • yeen