Narcoleptic's Patch Mangler

    bijective-link-shortener

    1.5.4 • Public • Published

    bijective-link-shortener

    Build Status

    Coverage Status

    npm version

    Bijective encode and decode functions to convert between Base 10 and Base 58 (default). I'm using this for a link shortener.

    For more on bijective functions and link shortening, please see:

    Installation

    npm install bijective-link-shortener -S

    Demo site

    https://ls.icjia.cloud/

    Default encoding alphabet

    123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ

    58 characters (default). No number '0', no upper-case letter 'O', no upper-case letter 'I', no uppercase letter 'l'.

    The default alphabet can be set manually and/or randomized. See API below.

    Basic Usage with default encoding alphabet

    const baseConvert = require('bijective-link-shortener')
     
    const databaseId = 2347247
     
    baseConvert.encode(databaseId) // 'd2KM'
     
    baseConvert.decode('d2KM') // 2347247

    API

    baseConvert.encode(num): Returns string. Encodes a given seed value (such as a unique database ID) into a string based on the selected encoding alphabet.

    baseConvert.decode(str): Returns integer. Decodes a given string value (such as a short URL string) into a number based on the selected encoding alphabet.

    baseConvert.setAlphabet(str): Returns string. Assign a new encoding alpahbet and echoes it back.

    baseConvert.getAlphabet(): Returns string. Current encoding alphabet.

    baseConvert.getBase(): Returns integer. The length of current encoding alphabet. For example, a 58 character encoding alphabet equals a Base 58 conversion. A 33 character encoding equals a Base 33 conversion.

    baseConvert.isInteger(num): Returns boolean. Indicates whether a given number is an integer.

    baseConvert.isPositive(num): Returns boolean. Indicates whether a given number is positive.

    baseConvert.isUnique(str): Returns boolean. Indicates whether given string has no repeating characters.

    baseConvert.randomizeAlphabet(): Returns string. Shuffles current encoding alphabet.

    Keywords

    none

    Install

    npm i bijective-link-shortener

    DownloadsWeekly Downloads

    2

    Version

    1.5.4

    License

    MIT

    Last publish

    Collaborators

    • cschweda