trigedasleng-api

1.1.2 • Public • Published

trigedasleng-api

NodeJS API wrapper for trigedasleng.net by Stephano from Project Arkadia.

Getting started

Prerequisites

  • NodeJS
  • NPM
  • Yarn

Install

From npm

yarn add trigedasleng-api

or

npm i trigedasleng-api

Use

const trig = require('trigedasleng-api');

Search

trig.search(query, lang)
    .then(console.log)
    .catch(console.error);

Parameters :

  • query string - A word/expression to translate
  • lang string - Query language, either eng or trig
    (Optional but enhances results sorting)

Result :

  • exactMatch array - Exact matching words
  • words array - Other matching words sorted by relevancy
    • Cf. word/phrase object structure
    • match float
  • sentences array - Translated sentences from the show
    • trig string - Sentence in trigedasleng
    • eng string - Sentence in english
    • leipzig string - Sentence in Leipzig Glossing notation
    • etymology string - The word's origin
    • episode - The episode which the sentence come from
      • season integer
      • number integer
    • audio url - The sentence recording from the episode
    • match float

Dictionnary

trig.getDictionary(dic)
    .then(console.log)
    .catch(console.error);

dic string - Dictionnary type
Default : all

Known : - canon - noncanon - slakgedasleng

Result : an array containing all words from all dictionaries.

Word/phrase object structure

  • link url - Link to the word's page from trigedasleng.net
  • text string - The word/phrase itself
  • type array of strings - The word/phrase type(s)
    Most known :
    • noun
    • verb
    • adjective
    • adverb
    • phrase
    • interjection
    • preposition
    • auxiliary
    • conjunction
    • satellite
    • idiom
  • translations array of objects - Matching translations for the word/phrase
    • before string - (usually) specific word type
    • text string - word
    • after string - (usually) specific word context
    • fullText string - the entire translation string
  • etymology string

Word/phrase types

trig.getTypes()
    .then(console.log)
    .catch(console.error);

Result : associative array
Key : word/phrase type
Value : word/phrase count

Translation

trig.translate(sentence, lang)
    .then(console.log)
    .catch(console.error);

Result : literal (word-by-word) translated string

Untranslated words will remain in english.

Built with

Node modules :

  • requestretry - HTTP requests with auto-retry (based on request)
    To make requests to API endpoints
  • string-similarity - Dice's coefficient based strings similarity calculator
    To enhance results sorting

Credits

Changelog

  • 1.0.0 (2019-06-03) • Initial release
  • 1.1.0 (2019-07-26)
    • Improved search results parsing
    • Added support for dictionary filters to getDictionary method
    • Added getTypes & translate method
  • 1.1.2 (2020-05-18)
    • Fixed typeless words
    • Using Laravel API endpoints

Dependencies (4)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i trigedasleng-api

    Weekly Downloads

    2

    Version

    1.1.2

    License

    GPL-2.0-only

    Unpacked Size

    34.1 kB

    Total Files

    8

    Last publish

    Collaborators

    • kaki87