{"id":26949848,"url":"https://github.com/rozek/glif-interfaces","last_synced_at":"2026-03-04T04:02:31.131Z","repository":{"id":278576848,"uuid":"935914331","full_name":"rozek/glif-interfaces","owner":"rozek","description":"a growing list of TypeScript interfaces for Glifs intended to be used in AI agents","archived":false,"fork":false,"pushed_at":"2025-02-21T20:23:35.000Z","size":176,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-09T01:28:55.735Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rozek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-20T08:19:49.000Z","updated_at":"2025-02-21T20:23:38.000Z","dependencies_parsed_at":"2025-02-20T15:23:53.432Z","dependency_job_id":"98a99dca-e38d-4437-9294-32324603d6c0","html_url":"https://github.com/rozek/glif-interfaces","commit_stats":null,"previous_names":["rozek/glif-interfaces","rozek/glif-api-support"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rozek/glif-interfaces","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozek%2Fglif-interfaces","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozek%2Fglif-interfaces/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozek%2Fglif-interfaces/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozek%2Fglif-interfaces/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rozek","download_url":"https://codeload.github.com/rozek/glif-interfaces/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rozek%2Fglif-interfaces/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30071670,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T03:25:38.285Z","status":"ssl_error","status_checked_at":"2026-03-04T03:25:05.086Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-02T22:18:08.198Z","updated_at":"2026-03-04T04:02:31.095Z","avatar_url":"https://github.com/rozek.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# glif-interfaces #\n\na growing list of TypeScript interfaces for Glifs intended to be used in AI agents\n\n\u003e Nota bene: these \"interfaces\" often contain additional functionality that goes beyond what the underlying Glif does. Typical example: many \"interfaces\" detect the language of the original request - and if that is not english, they first translate the request into english, then run the underlying Glif and finally translate the answer back into the original language (if that translation makes sense).\n\n\u003e **Important: in order to run Glifs via their API, you will have to [sign up for a Glif account](https://glif.app/signin) and [request your personal API Token](https://glif.app/settings/api-tokens)**\n\n**Warning: due to a nasty bug in Glif, backticks cannot be entered into the prompt input fields of \"Text Generation\" blocks, thus damaging my prompts - as a consequence, the code and my examples may not work as expected!**\n\n**Warning: another nasty bug seems to prevent longer input texts (20k are already too long) - as a consequence, the functions in this module can only be used for simple and small demonstrators right now**\n\n\u003e if you like, directly jump to some [interactive Usage Examples](#examples)\n\n## Overview ##\n\n(t.b.w)\n\n### Limitations ###\n\nIn order to remain cheap enough for my students, the LLMs used here are relatively small and may not produce output of the same quality as larger models from Open AI and other global players. In addition, context lengths and token generation limits of Glif models seem to be smaller than those of \"professional\" LLMs.\n\nNevertheless, these components show what is possible and how it may be achieved - perfect for personal experiments and application prototypes. And if you need to enhance the blocks provided by the original `glif-interfaces`: you are free to fork your own variant and prepare your own Glifs with your own LLMs or LLMs of other providers using your own account at any time, otherwise keeping the original application the same.\n\n## Installation ##\n\n`glif-interfaces` may be used as an ECMAScript module (ESM), a CommonJS or AMD module or from a global variable.\n\nYou may either install the package into your build environment using [NPM](https://docs.npmjs.com/) with the command\n\n```\nnpm install glif-interfaces\n```\n\nor load the plain script file directly\n\n```html\n\u003cscript type=\"module\" src=\"https://rozek.github.io/glif-interfaces/dist/glif-interfaces.esm.js\"\u003e\u003c/script\u003e\n```\n\n## Access ##\n\nHow to access the package depends on the type of module you prefer\n\n* ESM (or Svelte): `import { GlifRunner,LanguageOfText } from 'glif-interfaces'`\n* CommonJS: `const GlifInterfaces = require('glif-interfaces')`\n* AMD: `require(['glif-interfaces'], (GlifInterfaces) =\u003e {...})`\n\nAlternatively, you may access the global variable `GlifRunner` directly.\n\n## Usage within Svelte ###\n\nFor Svelte, it is recommended to import the package in a module context. From then on, its exports may be used as usual:\n\n```html\n\u003cscript context=\"module\"\u003e\n  import { GlifRunner,LanguageOfText,TranslationOfTextInto } from 'glif-interfaces'\n\u003c/script\u003e\n\n\u003cscript\u003e\n  GlifRunner.APIToken = '...'\n  ;(async () =\u003e {\n    console.log(await LanguageOfText('Hello, World!'))\n    console.log(await TranslationOfTextInto('Hello, World!','german'))\n  })()\n\u003c/script\u003e\n```\n\nYou may experiment with that code [in the Svelte REPL](https://svelte.dev/playground/350baed45fb249b58dedba2fd184d9e9?version=5.20.2)\n\n## Examples ##\n\n`glif-interfaces` contains numerous building blocks for AI agents, here are some examples (please note, that these examples may seem primitive - otherwise they would become too long - but do not underestimate what you may be able to do with these blocks in a real application with real-world inputs)\n\n### Language Detection and Translation ###\n\nHere is how to detect the language of a given text and how to translate it into a different language (try yourself using the [Svelte REPL](https://svelte.dev/playground/350baed45fb249b58dedba2fd184d9e9?version=5.20.2))\n\n```javascript\nimport {\n  GlifRunner,\n  LanguageOfText,TranslationOfTextInto\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await LanguageOfText('Hello, World!'))\n  console.log(await TranslationOfTextInto('Hello, World!','german'))\n})()\n```\n\nThe following languages are supported (these are the languages, the most common LLMs have been trained with. Your mileage may vary depending on LLM and language - \"german\" seems to work pretty well):\n\n* arabic\n* bengali\n* bulgarian\n* chinese\n* danish\n* german\n* english\n* estonian\n* finnish\n* french\n* greek\n* hebrew\n* hindi\n* italian\n* korean\n* croatian\n* dutch\n* portuguese\n* spanish\n* czech\n* hungarian\n\nIf you want to experiment with that feature: here is the [underlying Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)\n\n### Specification Review and Update ###\n\nThis example shows how to evaluate a given specification and how to update it by applying a list of changes. Please note, that while the original input is in german, the Glif \"interface\" (not the underlying Glif!) first translates it into english, then runs the Glif and finally translates the output back into german - because LLMs can handle english much better than any other language (try yourself using the [Svelte REPL](https://svelte.dev/playground/8f03810f210c4bd394625abf455340f6?version=5.20.2)).\n\n\u003e if you don't understand the german input: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n```javascript\nimport {\n  GlifRunner,\n  ReviewOfSpecification, SpecificationUpdatedUsing,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await ReviewOfSpecification(\n    'verlangt wird ein Pseudo-Number Generator in TypeScript, der in ' +\n    'einer Browser-Umgebung funktioniert'\n  ))\n  console.log(await SpecificationUpdatedUsing(\n    'verlangt wird ein Pseudo-Number Generator in TypeScript, der in ' +\n    'einer Browser-Umgebung funktioniert',\n    'Verwende einen \"Linearen Kongruenzgenerator\" (LCG). Vervollständige die ' +\n    'Spezifikation so, daß eine einfache und sinnvoll einsetzbare Funktion ' +\n    'entsteht. Wähle insbesondere vernünftige Konstanten für den LCG'\n  ))\n})()\n```\n\nYou may repeatedly review and enhance your specification until either you or the AI seems confident enough that the specification may be implemented.\n\n### Code Generation ###\n\nGiven a specification, some additional requirements (such as a certain code style or the libraries to be used) and an already existing implementation (if any) can be used to generate (or update) the corresponding JavaScript or TypeScript code (try yourself using the [Svelte REPL](https://svelte.dev/playground/b38c9e2b43be499f9273a99ac548388f?version=5.20.2)).\n\n\u003e if you don't understand the german input: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n```javascript\nimport {\n  GlifRunner,\n  LanguageOfText, TranslationOfTextInto,\n  JavaScriptImplementationOf,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await JavaScriptImplementationOf(\n`\nEin Pseudo-Zufallszahlengenerator in JavaScript wird benötigt, der in einer Browserumgebung funktioniert. Der Generator sollte einen \"Linear Congruential Generator\" (LCG) mit den folgenden Konstanten verwenden:\n\nModulus (m): 2^32\nMultiplikator (a): 1664525\nInkrement (c): 1013904223\nStartwert (x0): 12345\n\nDie Funktion sollte einen optionalen Startwert-Parameter akzeptieren und eine Sequenz von Pseudozufallszahlen zurückgeben.\n`, 'Vermeide Semikolons soweit möglich. Der fertige Code sollte ohne Dependencies auskommen und sofort einsetzbar sein', ''\n  ))\n})()\n```\n\nTypeScript code generation works in a similar way (see the related example in the [Svelte REPL](https://svelte.dev/playground/114dbfd990264edc8dc4ee6e9d844720?version=5.20.2))\n\n### Code Review ###\n\nGiven a JavaScript or TypeScript code snippet, this example analyzes it and identifies actuel or potential problems (try yourself using the [Svelte REPL](https://svelte.dev/playground/f1eb2e4bf5744a2ea12b365b7c153077?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  ReviewOfJavaScript,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await ReviewOfJavaScript(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    return x0\n  }\n}\n`, 'ignoriere fehlende Kommentare', 'de'\n  ))\n})()\n```\n\n\u003e if you don't understand the german input: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\nThe TypeScript code review works in a similar way (see the related example in the [Svelte REPL](https://svelte.dev/playground/d56ed6e62cfc49b2a8de478c8768f315?version=5.20.2))\n\n### Code Fixing ###\n\nGiven some code and an error message, this example tries to find the underlying problem and fix it (try yourself using the [Svelte REPL](https://svelte.dev/playground/c2ae27963600407db0c243c336d76b69?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  CodeWithFixForError,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await CodeWithFixForError(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    #return x0\n  }\n}\n`, 'Syntax Error'\n  ))\n})()\n```\n\n### Test Case Generation ###\n\nThis example generates the (unit) test cases for a given code (try yourself using the [Svelte REPL](https://svelte.dev/playground/5b5a673127504a3da251b934fd7490f2?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  TestCasesForCode,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await TestCasesForCode(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    return x0\n  }\n}\n`, '', 'de'\n  ))\n})()\n```\n\n\u003e if you don't understand the german output: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n### Test Generation ###\n\nGiven an existing code and some test cases, this example implementes the listed (unit) tests (try yourself using the [Svelte REPL](https://svelte.dev/playground/1404ea40fd2841a781f5bffef4271136?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  TestsForJavaScript,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await TestsForJavaScript(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    return x0\n  }\n}\n`,`\nTestfälle:\n\n1. **Initialisierung**\n   - Überprüfen, dass die \\`lcg\\`-Funktion ohne Argumente aufgerufen werden kann und eine gültige Funktion zurückgibt.\n   - Überprüfen, dass die \\`lcg\\`-Funktion mit einem anfänglichen Startwert \\`x0\\` aufgerufen werden kann und eine gültige Funktion zurückgibt.\n\n2. **Zufallszahlenerzeugung**\n   - Überprüfen, dass die von \\`lcg\\` zurückgegebene Funktion eine Sequenz von Pseudozufallszahlen erzeugt.\n   - Überprüfen, dass die Sequenz der Pseudozufallszahlen deterministisch ist, d.h. dass die gleiche Sequenz erzeugt wird, wenn der gleiche Startwert \\`x0\\` verwendet wird.\n   - Überprüfen, dass die erzeugten Pseudozufallszahlen im erwarteten Bereich liegen (0 bis \\`m - 1\\`, wobei \\`m = 2^32\\`).\n\n3. **Modulo-Operation**\n   - Überprüfen, dass die Modulo-Operation \\`% m\\` korrekt auf das Ergebnis der linearen kongruenten Formel angewendet wird.\n\n4. **Lineare kongruente Formel**\n   - Überprüfen, dass die lineare kongruente Formel \\`(a * x0 + c) % m\\` korrekt implementiert ist.\n   - Überprüfen, dass die Werte von \\`a\\`, \\`c\\` und \\`m\\` korrekt sind.\n\n5. **Randfall**\n   - Überprüfen, dass die \\`lcg\\`-Funktion den Fall behandelt, in dem der anfängliche Startwert \\`x0\\` nicht angegeben wird (d.h. den Standardwert \\`12345\\` verwendet).\n   - Überprüfen, dass die \\`lcg\\`-Funktion den Fall behandelt, in dem der anfängliche Startwert \\`x0\\` sehr groß oder sehr klein ist.\n`, '', ''\n  ))\n})()\n```\n\n\u003e if you don't understand the german input: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\nThe TypeScript test generation works in a similar way (see the related example in the [Svelte REPL](https://svelte.dev/playground/c7947be105084dc7a333098f08b9c8c7?version=5.20.2))\n\n### Synopsis Generation ###\n\nThis example generates a short synopsis for a given code (try yourself using the [Svelte REPL](https://svelte.dev/playground/a0ee7664fe304ea9947300bf0997d3f2?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  SynopsisForCode,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await SynopsisForCode(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    return x0\n  }\n}\n`, 'german'\n  ))\n})()\n```\n\n\u003e if you don't understand the german output: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n### Documentation Generation ###\n\nThis example generates the technical documentation for a given code (try yourself using the [Svelte REPL](https://svelte.dev/playground/f828499208614b2d9ecc4e5ba6505636?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  DocumentationForCode,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await DocumentationForCode(\n`\nfunction lcg(x0 = 12345) {\n  const m = 2 ** 32\n  const a = 1664525\n  const c = 1013904223\n\n  return function() {\n    x0 = (a * x0 + c) % m\n    return x0\n  }\n}\n`, '', 'german'\n  ))\n})()\n```\n\n\u003e if you don't understand the german output: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n### Document from Notes ###\n\nThe following example takes a list of notes and converts them into a complete text (try yourself using the [Svelte REPL](https://svelte.dev/playground/fae245689fd94397b21e75f0aefcdce6?version=5.20.2)).\n\n```javascript\nimport {\n  GlifRunner,\n  DocumentFromNotes,\n} from \"glif-interfaces\"\n\n;(async () =\u003e {\n  GlifRunner.APIToken = '...'\n\n  console.log(await DocumentFromNotes(\n`\nZur Funktionsweise eines Linearer Kongruenzgenerators (LCG)\n\n- **Formel**: $$ X_{n+1} = (aX_n + b) \\mod m $$\n- **Parameter**:\n  - $$ m $$: Modulus\n  - $$ a $$: Multiplikator\n  - $$ b $$: Inkrement\n  - $$ X_0 $$: Startwert\n- **Funktionsweise**:\n  - Modulare Arithmetik\n  - Pseudozufallszahlen\n  - Periodische Sequenz\n- **Anforderungen für maximale Periode**:\n  - $$ b $$ teilerfremd zu $$ m $$\n  - $$ a-1 $$ teilt jeden Primfaktor von $$ m $$\n  - $$ a-1 $$ teilt $$ 4 $$, wenn $$ m $$ durch $$ 4 $$ teilbar ist\n- **Typen**:\n  - Multiplikativ ($$ b = 0 $$)\n  - Gemischt ($$ b \\neq 0 $$)\n`, '', 'german'\n  ))\n})()\n```\n\n\u003e if you don't understand the german input: the first example (and its [Glif](https://glif.app/@rozek/glifs/cm7dj2je40003yilbq4y0hl4h)) give you a possibility to translate it into your favourite language\n\n\n\n(more to come)\n\n## API Reference ##\n\n* `fencable(Text:string):string`\u003cbr\u003eEscapes specific characters in the provided text to make it \"fencable\".\n* `fenced(Text:string):string`\u003cbr\u003eWraps the provided text between specific fence markers.\n* `unfenced(Text:string):string`\u003cbr\u003eRemoves the fence markers from the text and unescapes specific characters.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `LanguageOfText(Text:string):Promise\u003cLanguageCode\u003e`\u003cbr\u003eDetects the language of the provided text and returns the corresponding language code.\n* `TranslationOfTextInto(Text:string, TargetLanguage:Language|LanguageCode):Promise\u003cstring\u003e`\u003cbr\u003eTranslates the provided text into the specified target language.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `ReviewOfSpecification(Specification:string):Promise\u003cstring\u003e`\u003cbr\u003eAnalyzes the given specification and returns a review.\n* `SpecificationUpdatedUsing(Specification:string, Instructions:string):Promise\u003cstring\u003e`\u003cbr\u003eUpdates the given specification based on the provided instructions.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `JavaScriptImplementationOf(Specification:string, Requirements:string = '', existingCode:string = ''):Promise\u003cstring\u003e`\u003cbr\u003eGenerates JavaScript code based on the provided specification and requirements.\n* `TypeScriptImplementationOf(Specification:string, Requirements:string = '', existingCode:string = ''):Promise\u003cstring\u003e`\u003cbr\u003eGenerates TypeScript code based on the provided specification and requirements.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `ReviewOfJavaScript(Code:string, Constraints:string = '', OutputLanguage:string = 'en'):Promise\u003cstring\u003e`\u003cbr\u003eReviews the provided JavaScript code and suggests improvements.\n* `ReviewOfTypeScript(Code:string, Constraints:string = '', OutputLanguage:string = 'en'):Promise\u003cstring\u003e`\u003cbr\u003eReviews the provided TypeScript code and suggests improvements.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `CodeWithFixForError(Code:string, ErrorMessage:string):Promise\u003cstring\u003e`\u003cbr\u003eFixes a specified error in the provided code.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `TestCasesForCode(Code:string, existingTestCases:string = '', OutputLanguage?:string):Promise\u003cstring\u003e`\u003cbr\u003eGenerates a list of test cases for the provided code.\n* `TestsForJavaScript(Code:string, TestCases:string, Requirements:string = '', existingTests:string = ''):Promise\u003cstring\u003e`\u003cbr\u003eGenerates a list of tests for the provided JavaScript code.\n* `TestsForTypeScript(Code:string, TestCases:string, Requirements:string = '', existingTests:string = ''):Promise\u003cstring\u003e`\u003cbr\u003eGenerates a list of tests for the provided TypeScript code.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `SynopsisForCode(Code:string, OutputLanguage?:string):Promise\u003cstring\u003e`\u003cbr\u003eGenerates a synopsis for the provided code.\n* `DocumentationForCode(Code:string, existingDocumentation:string = '', OutputLanguage?:string):Promise\u003cstring\u003e`\u003cbr\u003eGenerates documentation for the provided code.\u003cbr\u003e\u0026nbsp;\u003cbr\u003e\n* `DocumentFromNotes(Notes:string, existingDocument:string = '', OutputLanguage?:string):Promise\u003cstring\u003e`\u003cbr\u003eGenerates well-formulated text from the provided notes.\n\n## Type Reference ##\n\n* `LanguageCode`\u003cbr\u003eRepresents a language code from the predefined list of supported language codes.\n* `Language`\u003cbr\u003eRepresents a language name from the predefined list of supported languages.\n\n(t.b.w)\n\n## Build Instructions ##\n\nYou may easily build this package yourself.\n\nJust install [NPM](https://docs.npmjs.com/) according to the instructions for your platform and follow these steps:\n\n1. either clone this repository using [git](https://git-scm.com/) or [download a ZIP archive](https://github.com/rozek/glif-interfaces/archive/refs/heads/main.zip) with its contents to your disk and unpack it there \n2. open a shell and navigate to the root directory of this repository\n3. run `npm install` in order to install the complete build environment\n4. execute `npm run build` to create a new build\n\nYou may also look into the author's [build-configuration-study](https://github.com/rozek/build-configuration-study) for a general description of his build environment.\n\n## License ##\n\n[MIT License](LICENSE.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frozek%2Fglif-interfaces","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frozek%2Fglif-interfaces","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frozek%2Fglif-interfaces/lists"}