# gtranslate Better front-end for Google Translate that doesn't track you and works without JavaScript. # Installation ```sh git clone https://git.sr.ht/~yerinalexey/gtranslate cd gtranslate go build ``` Then run the server with ```sh ./gtranslate ``` If you want to use a different port: ```sh ./gtranslate -b :3000 # will run on port 3000 ``` Note: if you're running it outside of development environment, you should pass `--template-dir` and `--static-dir` arguments pointing to templates and static directories: ```sh ./gtranslate \ --template-dir /usr/share/webapps/gtranslate/templates \ --static-dir /usr/share/webapps/gtranslate/static ``` Other settings (available with `./gtranslate --help`): ``` Usage of ./gtranslate: -b, --bind string Address to bind the server to, [addr]:port (default ":5000") --proxy string Proxy URL, with no scheme http is assumed --static-dir string Static files directory (default "./static") --template-dir string Templates directory (default "./templates") --user-agent string User-Agent header to use ``` # Using Tor Routing requests through Tor has its benefits: - Google will have a hard time tracking `gtranslate` servers as they act like normal Tor users - You probably won't get banned as requests are made from different IPs Despite that, it has some drawbacks: - Much slower response time - Might get capcha or some other junk that will block requests - If doing the wrong thing, you might get your server compromised (in terms of anonymity) - This feature is not tested in development First of, you need to set up Tor daemon on the server. Here's a guide on ArchWiki: [Tor](https://wiki.archlinux.org/index.php/tor). With default settings, it should start a SOCKS5 proxy on localhost, port 9050. Also, to minimize fingerprint, you need to use a very common user agent on Tor network. And, you guessed it, get it straight from Tor Browser. If you have one, you can just open `https://httpbin.org/headers` and copy it from there. If not, the latest available is provided here: [Tor Browser's User-Agent](https://tor.stackexchange.com/questions/4890/tor-browser-user-agent-strings/21524#21524) Full setup: ```sh ./gtranslate \ --user-agent "Mozilla/5.0 (Windows NT 10.0; rv:68.0) Gecko/20100101 Firefox/68.0" \ --proxy "socks5://localhost:9050" \ ... ``` If you have managed to set it up or experienced issues with this guide, feel free to shoot an email to my [public inbox][public-inbox] or tag `@yerinalexey@mastodon.online` on Fediverse. # TODO - Proper language selector - Dark theme