commit a26b5df8f5045eae6e3ea270bd61e20c74b7eca8
parent 7ee4828d7d911fdc668498096b41b0bac93de2eb
Author: FIGBERT <figbert@figbert.com>
Date: Fri, 2 Jul 2021 17:40:30 -0700
Add project summary for my work on SimplyTranslate
Diffstat:
1 file changed, 55 insertions(+), 0 deletions(-)
diff --git a/content/projects/simply-translate/index.md b/content/projects/simply-translate/index.md
@@ -0,0 +1,55 @@
++++
+title = "SimplyTranslate"
+description = "SimplyTranslate is a collection of “translation scrapers with interfaces for gemini and the web,” made by metalune. In other words, it’s 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."
+date = 2021-07-02
+weight = 2
++++
+
+[**SimplyTranslate**][st] is a collection of "translation scrapers with
+interfaces for gemini and the web," made by [metalune]. In other words,
+it's 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.
+
+<!-- more -->
+
+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]. Metalune made a [repo for the
+Dockerfiles][repo], and I sent in a [patch via email][patch]. It was
+[committed] within the hour.
+
+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], and
+browse the source code [on sourcehut][st].
+
+[st]: https://sr.ht/~metalune/SimplyTranslate/sources
+[metalune]: gemini://metalune.xyz
+[Nitter]: https://github.com/zedeus/nitter
+[Libera.Chat]: https://libera.chat
+[uvicorn]: https://www.uvicorn.org
+[repo]: https://git.sr.ht/~metalune/simplytranslate_docker/
+[patch]: https://lists.sr.ht/~metalune/simplytranslate-devel/patches/23516
+[committed]: https://git.sr.ht/~metalune/simplytranslate_docker/commit/4fc34e3503def3a8436dab4f84a1731070a715ba
+[hosted instance]: https://translate.metalune.xyz/