{"id":17351670,"url":"https://github.com/mddanish00/stas-server","last_synced_at":"2025-07-21T16:35:36.928Z","repository":{"id":256142002,"uuid":"850600923","full_name":"mddanish00/stas-server","owner":"mddanish00","description":"An alternative standalone translation server for Sugoi Translator.","archived":false,"fork":false,"pushed_at":"2025-06-30T06:34:30.000Z","size":249,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-30T07:32:54.129Z","etag":null,"topics":["ai","ctranslate2","python","sugoi","sugoi-translate","translation"],"latest_commit_sha":null,"homepage":"","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/mddanish00.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","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,"zenodo":null},"funding":{"buy_me_a_coffee":"mddanish00","ko_fi":"mddanish00"}},"created_at":"2024-09-01T08:48:06.000Z","updated_at":"2025-06-30T06:34:26.000Z","dependencies_parsed_at":"2024-10-15T17:10:56.668Z","dependency_job_id":"a91530de-2964-43b7-89af-a6aecb4199ef","html_url":"https://github.com/mddanish00/stas-server","commit_stats":null,"previous_names":["mddanish00/stas-server"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/mddanish00/stas-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mddanish00%2Fstas-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mddanish00%2Fstas-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mddanish00%2Fstas-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mddanish00%2Fstas-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mddanish00","download_url":"https://codeload.github.com/mddanish00/stas-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mddanish00%2Fstas-server/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266335148,"owners_count":23913113,"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","status":"online","status_checked_at":"2025-07-21T11:47:31.412Z","response_time":64,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"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":["ai","ctranslate2","python","sugoi","sugoi-translate","translation"],"created_at":"2024-10-15T17:10:47.634Z","updated_at":"2025-07-21T16:35:36.920Z","avatar_url":"https://github.com/mddanish00.png","language":"Python","funding_links":["https://buymeacoffee.com/mddanish00","https://ko-fi.com/mddanish00","https://www.patreon.com/mingshiba"],"categories":[],"sub_categories":[],"readme":"# stas-server\n\nstas-server is an alternative standalone translation server for Sugoi Translator.\n\nstas-server name is an abbreviation of Sugoi Translator Alternative Standalone Server.\n\nNot affiliated with Sugoi Translator.\n\nThe project is in active development.\n\n## Todo List to v1.0.0 Release\n\n- [x] Async server (bottle.py with tornado)\n- [x] Multiline support\n- [x] Newlines support\n- [x] Batch support\n- [x] Only translate Japanese\n- [x] `Access-Control-Allow-Private-Network` header\n- [ ] XUAT Placeholder support\n- [X] CUDA support (Tested)\n- [ ] Detailed documentation\n- [X] Cache support when running (Reset on Server Shutdown)\n- [X] V8 and above models directory support\n\n## User Guide\n\n### Requirements\n\n- Sugoi Japanese Toolkit from [MingShiba](https://www.patreon.com/mingshiba). If you are using a version lower than V7, you need to apply CudaInstallForToolKit from the Sugoi Translator Discord. Starting from V8, ct2Model is available by default. Make sure to note the path to the models folder.\n\n\u003e For V8 and above, the usual path is `[EXTRACTEDFOLDER]/Code/backendServer/Program-Backend/Sugoi-Japanese-Translator/offlineTranslation/models`.  \n\u003e For V7 and below using CudaInstallForToolKit (you need to run this first), the usual path is `[EXTRACTEDFOLDER]/Code/backendServer/Program-Backend/Sugoi-Japanese-Translator/offlineTranslation/ct2`. Inside the `ct2` folder, `ct2_models` needs to be renamed to `ct2Model`.\n\n- Python 3.12 recommended. For Python 3.13, you **absolutely** need to use [my Python Package Index](https://mddanish00.github.io/python-index/simple). Python 3.14 and above are still not supported.\n\n### Installation\n\nThis project is not intended as a library, so installation through `uv` is recommended.\n\nIt is recommended to use [my Python Package Index](https://mddanish00.github.io/python-index/simple) for as shown as below to install this package.\n\nYou can also directly download the wheel in the [Releases](https://github.com/mddanish00/stas-server/releases) and install the package.\n\n#### Install using uv\n\n```commandline\nuv tool install stas-server --index https://mddanish00.github.io/python-index/simple\n```\n\n### Upgrade Server\n\n#### Upgrade using uv\n\n```commandline\nuv tool upgrade stas-server\n```\n\n### Running Server\n\n```cmd\nUsage: stas-server [OPTIONS] [PORT]\n\n  Run stas-server, an alternative standalone translation server for Sugoi\n  Translator.\n\nOptions:\n  -v, --version           Show the version and exit.\n  --cuda                  Enable CUDA.\n  --no-cache              Disable cache.\n  --models_dir DIRECTORY  Path to models folder.  [required]\n  -h, --help              Show this message and exit.\n```\n\n#### Options\n\n|Name|Default|Description|\n|----|-------|-----------|\n|port|`14366`|Port of the server.|\n|cuda|`false`|Enable CUDA support.|\n|models_dir|`./models`|Path to models directory. By default, the program will use the folder named `models` in the current working directory.|\n\n## Development\n\nThis project is developed using the latest Python and managed by uv.\n\nTo start developing for this project, make sure to install uv. It will automatically download uv-managed Python if your system Python is not 3.13. It will not clash with your system Python because it is only used for this project.\n\nRefer to [uv official docs](https://docs.astral.sh/uv/getting-started/installation/) for the installation instructions.\n\nYou need to make sure install ICU if in Linux yourself. For Windows, you need to use my python index to install PyICU.\n\nInitialise the virtual environment and install dependencies.\n\n```commandline\nuv sync\n```\n\nLaunch and test the server.\n\n```commandline\nuv run stas-server\n```\n\nBuild the project wheel.\n\n```commandline\nuv build --wheel\n```\n\n## License\n\nThis project is licensed under the [MIT license](./LICENSE).\n\n## Acknowledgement\n\n- Thanks to [MingShiba](https://www.patreon.com/mingshiba) for creating the Sugoi Japanese Toolkit and making high-quality (still machine translation) available to enjoy many untranslated Japanese works.\n- Thanks to Tenerezza and bimbmsm on [Sugoi Toolkit Discord](https://discord.gg/XFbWSjMHJh) for CudaInstallForToolKit script for adding CT2 support. Some of the code is based on the included CT2 multiline server script.\n- Thanks to [Vin-meido](https://github.com/Vin-meido) for [Sugoi Translator XUAT](https://github.com/Vin-meido/XUnity-AutoTranslator-SugoiOfflineTranslatorEndpoint) support. Some of the code is based on the included server.py.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmddanish00%2Fstas-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmddanish00%2Fstas-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmddanish00%2Fstas-server/lists"}