{"id":17856794,"url":"https://github.com/rmraya/mtengines","last_synced_at":"2025-03-20T14:30:57.251Z","repository":{"id":176684071,"uuid":"658724236","full_name":"rmraya/MTEngines","owner":"rmraya","description":"TypeScript library for retrieving Machine Translation (MT) from different engines","archived":false,"fork":false,"pushed_at":"2025-03-13T20:09:21.000Z","size":80,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-13T21:25:39.618Z","etag":null,"topics":["machine-translation","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rmraya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2023-06-26T11:13:26.000Z","updated_at":"2025-03-13T20:09:24.000Z","dependencies_parsed_at":"2024-01-13T12:41:00.936Z","dependency_job_id":"9d08d896-672f-4550-be16-a65f6f8f6652","html_url":"https://github.com/rmraya/MTEngines","commit_stats":{"total_commits":25,"total_committers":2,"mean_commits":12.5,"dds":"0.040000000000000036","last_synced_commit":"74666d8a63f9025b51f976dc137f8e6c125ba4a7"},"previous_names":["rmraya/mtengines"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmraya%2FMTEngines","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmraya%2FMTEngines/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmraya%2FMTEngines/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmraya%2FMTEngines/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rmraya","download_url":"https://codeload.github.com/rmraya/MTEngines/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244630080,"owners_count":20484309,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["machine-translation","typescript"],"created_at":"2024-10-28T03:09:17.301Z","updated_at":"2025-03-20T14:30:57.242Z","avatar_url":"https://github.com/rmraya.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MTEngines\n\nTypeScript library for Machine Translation (MT) engines.\n\nInterface `MTEngine` provides these methods:\n\n```typescript\n    getName(): string;\n    getShortName(): string;\n    getSourceLanguages(): Promise\u003cstring[]\u003e;\n    getTargetLanguages(): Promise\u003cstring[]\u003e;\n    setSourceLanguage(lang: string): void;\n    getSourceLanguage(): string;\n    setTargetLanguage(lang: string): void;\n    getTargetLanguage(): string;\n    translate(source: string): Promise\u003cstring\u003e;\n    getMTMatch(source: string): Promise\u003cMTMatch\u003e;\n    handlesTags(): boolean;\n    fixesMatches(): boolean;\n    fixMatch?(originalSource: XMLElement, matchSource: XMLElement, matchTarget: XMLElement): Promise\u003cMTMatch\u003e;\n```\n\nAll supported engines implement this interface. The `fixMatch()` method is optional and only implemented by `ChatGPTTranslator`.\n\n```typescript\n    getSource(): string;\n    getTarget(): string;\n    getConfidence(): number;\n    getSourceLanguage(): string;\n    getTargetLanguage(): string;\n    getSourceXMLElement(): XMLElement;\n    getTargetXMLElement(): XMLElement;\n```\n\n## Supported Engines\n\n- DeepL (Free and Pro)\n- Google Cloud Translation\n- Microsoft Azure Translator Text\n- ModernMT\n- OpenAI ChatGPT\n- Yandex Translate API\n\n## Installation\n\n```bash\nnpm install mtengines\n```\n\n## Example\n\n```typescript\nimport { GoogleTranslator } from \"mtengines\";\n\nclass TestGoogle {\n\n    constructor() {\n        let translator: GoogleTranslator = new GoogleTranslator('yourApiKey');\n        translator.setSourceLanguage(\"en\");\n        translator.setTargetLanguage(\"ja\");\n         translator.translate(\"Hello World\").then((result:string) =\u003e {\n            console.log(result);\n        }, (error:any) =\u003e {\n            console.error(error);\n        });\n    }\n}\n\nnew TestGoogle();\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frmraya%2Fmtengines","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frmraya%2Fmtengines","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frmraya%2Fmtengines/lists"}