{"id":16195243,"url":"https://github.com/mrf345/flask_googletrans","last_synced_at":"2025-03-19T04:30:52.503Z","repository":{"id":57430355,"uuid":"131778126","full_name":"mrf345/flask_googletrans","owner":"mrf345","description":"Googletrans google translation flask extension","archived":false,"fork":false,"pushed_at":"2020-09-03T08:49:03.000Z","size":25,"stargazers_count":12,"open_issues_count":2,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-28T15:57:46.237Z","etag":null,"topics":["extension","flask","flask-googletrans","googletrans","translation"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/mrf345.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}},"created_at":"2018-05-02T00:39:58.000Z","updated_at":"2024-01-19T10:25:25.000Z","dependencies_parsed_at":"2022-08-26T05:01:29.421Z","dependency_job_id":null,"html_url":"https://github.com/mrf345/flask_googletrans","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_googletrans","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_googletrans/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_googletrans/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrf345%2Fflask_googletrans/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrf345","download_url":"https://codeload.github.com/mrf345/flask_googletrans/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243971156,"owners_count":20376784,"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":["extension","flask","flask-googletrans","googletrans","translation"],"created_at":"2024-10-10T08:26:46.101Z","updated_at":"2025-03-19T04:30:52.251Z","avatar_url":"https://github.com/mrf345.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align='center'\u003e flask_googletrans \u003c/h1\u003e\n\u003cp align='center'\u003e\n\u003ca href='https://travis-ci.com/mrf345/flask_googletrans'\u003e\u003cimg src='https://travis-ci.com/mrf345/flask_googletrans.svg?branch=master' /\u003e\u003c/a\u003e\u003ca href='https://coveralls.io/github/mrf345/flask_googletrans?branch=master'\u003e\u003cimg src='https://coveralls.io/repos/github/mrf345/flask_googletrans/badge.svg?branch=master' alt='Coverage Status' /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003ch3 align='center'\u003e\n    A Flask extension to add Googletrans google translation to the template with ability to cache translation to external pretty .json file.\n\u003c/h3\u003e\n\n## Install:\n#### - With pip\n\u003e - `pip install Flask-Googletrans` \u003cbr /\u003e\n\n#### - From the source:\n\u003e - `git clone https://github.com/mrf345/flask_googletrans.git`\u003cbr /\u003e\n\u003e - `cd flask_googletrans` \u003cbr /\u003e\n\u003e - `python setup.py install`\n\n## Setup:\n#### - Inside Flask app:\n```python\nfrom flask import Flask, render_template\nfrom flask_googletrans import translator\n\napp = Flask(__name__)\nts = translator(app)\n```\n\n#### - Inside jinja template:\n```jinja\n\u003ch1\u003e{{ translate(text='translation !', src='en', dest=['fr']) }}\u003c/h1\u003e\n```\n\n## Settings:\n#### - Options:\n\u003e The accepted arguments to be passed to the `translator.translate()` function are as follow:\n```python\ndef translate(\n        self,\n        text='translation !', # Text to be translated\n        src='en', # Language to be translated from\n        dest=['fr']): # Languages to translate to\n```\n\u003e If more than one language is used, the returning value will be a dictionary instead of a text string\n```python\n# assuming\ntranslate(text='something', src='en', dest=['fr', 'it', 'es'])\n# this will return \n{\"en\": \"nothing\", \"fr\": \"rien\", \"it\": \"Niente\", \"es\": \"nada\"}\n```\n\n#### - Caching:\n\u003e Caching stores all the translated text in one big dictionary with the translated text as a key in a separate .json file\n```python\nts = translator(\n    app=app,\n    cache=True, # To enable caching by default is disabled\n    fail_safe=False, # returns original text if fetching translation failed\n    skip_app=False, # to skip checking app for .init_app()\n    file_name='gt_cache.json', # To change the default name of the cache file\n    route=False # opens up a route on /gtran/\u003cfromL\u003e/\u003ctoL\u003e/\u003ctext\u003e to fetch translation as json response {translation: 'text ...'}\n)\n```\n\n#### - Useful functions:\n\nFunction | Does\n---------|----------\n ts.translate() | To translate as shown in template example\n ts.loadCache() | To load the cache file\n ts.cacheIt() | To store the current saved translation to the cache file\n\n\n#### - List of supported languages:\n`{\n    'af': 'afrikaans',\n    'sq': 'albanian',\n    'am': 'amharic',\n    'ar': 'arabic',\n    'hy': 'armenian',\n    'az': 'azerbaijani',\n    'eu': 'basque',\n    'be': 'belarusian',\n    'bn': 'bengali',\n    'bs': 'bosnian',\n    'bg': 'bulgarian',\n    'ca': 'catalan',\n    'ceb': 'cebuano',\n    'ny': 'chichewa',\n    'zh-cn': 'chinese (simplified)',\n    'zh-tw': 'chinese (traditional)',\n    'co': 'corsican',\n    'hr': 'croatian',\n    'cs': 'czech',\n    'da': 'danish',\n    'nl': 'dutch',\n    'en': 'english',\n    'eo': 'esperanto',\n    'et': 'estonian',\n    'tl': 'filipino',\n    'fi': 'finnish',\n    'fr': 'french',\n    'fy': 'frisian',\n    'gl': 'galician',\n    'ka': 'georgian',\n    'de': 'german',\n    'el': 'greek',\n    'gu': 'gujarati',\n    'ht': 'haitian creole',\n    'ha': 'hausa',\n    'haw': 'hawaiian',\n    'iw': 'hebrew',\n    'hi': 'hindi',\n    'hmn': 'hmong',\n    'hu': 'hungarian',\n    'is': 'icelandic',\n    'ig': 'igbo',\n    'id': 'indonesian',\n    'ga': 'irish',\n    'it': 'italian',\n    'ja': 'japanese',\n    'jw': 'javanese',\n    'kn': 'kannada',\n    'kk': 'kazakh',\n    'km': 'khmer',\n    'ko': 'korean',\n    'ku': 'kurdish (kurmanji)',\n    'ky': 'kyrgyz',\n    'lo': 'lao',\n    'la': 'latin',\n    'lv': 'latvian',\n    'lt': 'lithuanian',\n    'lb': 'luxembourgish',\n    'mk': 'macedonian',\n    'mg': 'malagasy',\n    'ms': 'malay',\n    'ml': 'malayalam',\n    'mt': 'maltese',\n    'mi': 'maori',\n    'mr': 'marathi',\n    'mn': 'mongolian',\n    'my': 'myanmar (burmese)',\n    'ne': 'nepali',\n    'no': 'norwegian',\n    'ps': 'pashto',\n    'fa': 'persian',\n    'pl': 'polish',\n    'pt': 'portuguese',\n    'pa': 'punjabi',\n    'ro': 'romanian',\n    'ru': 'russian',\n    'sm': 'samoan',\n    'gd': 'scots gaelic',\n    'sr': 'serbian',\n    'st': 'sesotho',\n    'sn': 'shona',\n    'sd': 'sindhi',\n    'si': 'sinhala',\n    'sk': 'slovak',\n    'sl': 'slovenian',\n    'so': 'somali',\n    'es': 'spanish',\n    'su': 'sundanese',\n    'sw': 'swahili',\n    'sv': 'swedish',\n    'tg': 'tajik',\n    'ta': 'tamil',\n    'te': 'telugu',\n    'th': 'thai',\n    'tr': 'turkish',\n    'uk': 'ukrainian',\n    'ur': 'urdu',\n    'uz': 'uzbek',\n    'vi': 'vietnamese',\n    'cy': 'welsh',\n    'xh': 'xhosa',\n    'yi': 'yiddish',\n    'yo': 'yoruba',\n    'zu': 'zulu',\n    'fil': 'Filipino',\n    'he': 'Hebrew'\n}`\n\n## Credit:\n\u003e - [Googletrans][1311353e]: Awesome free and unlimited python library that implements Google Translate API\n\n  [1311353e]: https://github.com/ssut/py-googletrans \"Googletrans repo\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrf345%2Fflask_googletrans","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrf345%2Fflask_googletrans","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrf345%2Fflask_googletrans/lists"}