NodeJS API wrapper for trigedasleng.net by Stephano from Project Arkadia.
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.
KaKi87 1536ad2611 Upgrade to v1.1.0, simplified changelog 2 months ago
.gitignore Initial release 6 months ago
LICENSE Initial commit 6 months ago
README.md Upgrade to v1.1.0, simplified changelog 2 months ago
index.js Revert "Add support for word root" 2 months ago
package.json Upgrade to v1.1.0, simplified changelog 2 months ago
yarn.lock Translation : word iteration using p-queue + fix trig to eng 4 months ago

README.md

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');
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