💾 Archived View for figbert.com › projects › simply-translate.gmi captured on 2021-11-30 at 20:18:30. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

SimplyTranslate

SimplyTranslate is a collection of "translation scrapers with interfaces for gemini and the web," made by metalune.

Check out metalune on their Gemini capsule!

In other words, SimplyTranslate is a privacy-respecting front end for Google Translate, similar to Twitter's Nitter. Over the course of a couple days – and one synchronous hacking session – I containerized the program to make it easier to deploy on servers worldwide.

When I first found the program, I immediately wanted to add it to my collection of self-hosted front ends. I had only one problem: I run my services with Docker, and SimplyTranslate had no Dockerfile. I tried slapping something together quickly, but curling from the container only threw an error:

curl: (52) Empty reply from server

I hopped onto the #simple-web IRC channel on Libera.Chat and started chatting with the devs. A couple days of back-and-forth later, we sat down to debug together. After scouring the internet, we determined that the application was binding to the wrong interface: 127.0.0.1, which is only accessible from the local machine, instead of 0.0.0.0, which is public.

I cooked up a pair of working Dockerfiles – the first running the app directly and the second through uvicorn:

a fast ASGI server for Python.

Metalune made a repo for the Dockerfiles, and I sent in a patch via email. It was committed within the hour.

Check out the repo,

the patch I sent,

and the commit itself.

This contribution was particularly interesting! We collaborated over IRC and across timezones, and I ended up returning to git's roots by submitting the patch via git send-email. Compared to the GitHub workflow, this feels very natural!

You can use SimplyTranslate over on metalune's hosted instance, either

on the web

or on Gemini.

Also feel free to browse the source code

over on SourceHut.