Hackers' Pub Update: LLM-based Article Translation Feature

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
An LLM-based article translation feature has been added. First, to allow your articles to be translated using LLM, you need to enable the "Allow LLM-powered automatic translation" option in the article publication settings. This option is turned off for all existing articles, but it is enabled by default for new articles.


For articles with this option enabled, a "Read in other languages" menu will appear at the top as shown below. The list of languages that appear in this menu can be set in the language settings.


Languages that have already been translated will be displayed immediately, but for languages that have not yet been translated, a message will appear asking you to wait, as shown below. Translation time varies depending on the length of the article, ranging from as short as 30 seconds to as long as 5 minutes.


When the translation is complete, the message will change as follows:


The translation feature was something I had been considering as a core functionality since I first conceptualized Hackers' Pub. This is because I've long felt the unfairness that software programmers must learn English to grow beyond a certain level, and the disappointment that most foreigners cannot access various materials written in non-English languages such as Japanese or Chinese. Fortunately, the translation quality of LLMs has improved significantly recently, allowing even small websites like Hackers' Pub to implement fairly good quality translation features.
For reference, the model currently used for translation is Claude Sonnet 3.7. It's not exactly an inexpensive model, but I'm running it as a pilot and considering switching to other models like Gemini 2.5 Flash if the cost becomes too burdensome.
In any case, I hope many people will find this newly added translation feature useful.
Below are sample translations I've prepared in advance:
- Ditch the DIY Drama: Why Use Fedify Instead of Building ActivityPub from Scratch? (English) → 〈DIY 드라마는 그만: 왜 ActivityPub을 처음부터 구축하는 대신 Fedify를 사용해야 할까요?〉 (Korean)
- 〈애플리케이션 개발 측면에서 본 Drizzle ORM 대 Kysely 비교〉 (Korean) → 「アプリケーション開発の観点から見たDrizzle ORMとKyselyの比較」 (Japanese)
- 〈deno-task-hooks: Git 훅을 Deno 태스크로 쉽게 관리하기〉 (Korean) → deno-task-hooks: Easily Manage Git Hooks as Deno Tasks (English)
- Browser-Native Translation and Language Detection APIs Coming Soon (English) → 〈브라우저 네이티브 번역 및 언어 감지 API 곧 출시 예정〉 (Korean)