Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.
Find a file
Piero Toffanin 9290b308c2 int arg
2020-12-20 16:57:31 -05:00
app Switch import 2020-12-20 16:02:30 -05:00
models@3d5ca0a2c3 UI mostly working 2020-12-20 11:55:56 -05:00
.gitignore First commit 2020-12-19 17:40:37 -05:00
.gitmodules First commit 2020-12-19 17:40:37 -05:00
install_models.py UI mostly working 2020-12-20 11:55:56 -05:00
LICENSE Initial commit 2020-12-19 14:19:35 -05:00
main.py int arg 2020-12-20 16:57:31 -05:00
README.md Update README 2020-12-20 16:13:38 -05:00
requirements.txt Waitress support 2020-12-20 15:05:22 -05:00

LibreTranslate

Free and Open Source Translation API, entirely self-hosted and can work in offline environments. Unlike other APIs, it doesn't rely on proprietary providers such as Google or Azure to perform translations.

image

Try it online! | API Docs

API Examples

Request:

const res = await fetch("https://libretranslate.com/translate", {
	method: "POST",
	body: JSON.stringify({
		q: "Hello!",
		source: "en",
		target: "es"
	}),
	headers: {
		"Content-Type": "application/json"
	});

console.log(await res.json());

Response:

{
    "translatedText": "¡Hola!"
}

Build and Run

You can run your own API server in just a few lines of setup!

Make sure you have installed Python (3.8 or higher), then simply issue:

git clone https://github.com/uav4geo/LibreTranslate --recurse-submodules
cd LibreTranslate
pip install -r requirements.txt
python main.py [args]

Then open a web browser to http://localhost:5000

Arguments

Argument Description Default
--host Set host to bind the server to 127.0.0.1
--port Set port to bind the server to 5000
--char-limit Set character limit No limit
--req-limit Set maximum number of requests per minute per client No limit
--ga-id Enable Google Analytics on the API client page by providing an ID No tracking
--debug Enable debug environment False
--ssl Whether to enable SSL 5000

Roadmap

Help us by opening a pull request!

  • A docker image
  • Auto-detect input language
  • User authentication / tokens

Credits

This work is largely possible thanks to Argos Translate, which powers the translation engine.

License

GNU Affero General Public License v3