FluentRead

Activity, over time

Daily observations from the public event archive.

Attention

Daily stars & forks

Loading attention chart

Star accumulation

Cumulative stars

Loading star accumulation chart

Pull requests

Daily opens & merges

Loading pull requests chart

Conversations

Daily issues & comments

Loading conversations chart

Community

Daily accounts & reviews

Loading community chart

Releases

Daily releases

Loading releases chart

Mentions

5posts · 30d
Nov 30 posts
  1. DEV · · @airhunter

    Why I maintain my own translation extension There are already plenty of browser translation extensions. Some handle webpages, video subtitles, and documents very well. I started working on OnlyTranslate because I wanted a different set of trade-offs in a tool I use every day. I spend a lot of time reading articles, forum posts, and technical documentation in other languages. What I wanted was straightforward: open something, translate it, and continue reading with the original text still nearby. Some capable products put considerable attention into accounts, subscriptions, and upgrades. Others have settings and features I rarely use. Paying for software is reasonable, and maintaining it costs money. But I wanted my reading tool to demand less attention, including less time deciding how to configure or subscribe to it. Free tools offered other compromises. Some were pleasantly simple but did not cover the reading situations I encountered. I wanted something I could keep improving around my own habits. From contributing upstream to maintaining a fork OnlyTranslate is based on FluentRead. It continues to be open source under GPL v3. My initial plan was to add the features I needed and contribute them upstream. That would let me build on the existing work without maintaining another project. In practice, my needs and the upstream project's direction and release cycle did not always align. A feature that mattered to me did not necessarily belong in the original project. Preparing changes for review, explaining the design, responding to feedback, and waiting for a release also took time. That is a normal part of responsible open-source maintenance. The original maintainer needs to manage scope and long-term costs. I wanted to experiment more quickly: find a problem on a page I was reading, fix it, check for regressions, and use the result. Maintaining a fork gave me that freedom. It also made me responsible for keeping the fork working. The original project remains an important part of its history, and I want that credit to stay visible. Choosing which parts of a page to translate One preference became clearer as I used the extension: most of the time, I wanted to translate the reading content. For an article or discussion, that usually means the title, body, and comments. Navigation, tags, share buttons, and subscription prompts are less important to me. Translating them can change their size and disturb the page's visual hierarchy. I can usually understand those short interface labels. Continuous reading is where I feel the effort: understanding and mentally translating paragraph after paragraph gradually takes attention away from the subject. OnlyTranslate's Smart scope prioritizes the main reading areas and tries to leave surrounding controls alone. It works best for articles, blogs, posts, and longer discussions. But documentation, dashboards, and information-dense pages do not always have a single article body. The extension also has a Full page scope, which covers more visible text and provides a fallback when Smart misses something. !OnlyTranslate showing original text and translations on a webpage The display mode is a separate choice. Bilingual keeps the original available for checking meaning; translation-only provides a more continuous reading flow. Keeping those choices understandable has been more useful to me than trying to make every decision automatic. I can choose the scope and display mode that fit the page in front of me. Subtitles bring a different timing problem Video was another reading situation I wanted to cover. Web paragraphs can wait for a translation. A video keeps playing. Requesting each subtitle only when it appears can fall behind; processing too much in advance adds waiting. Translating isolated lines also loses context. OnlyTranslate reads the subtitle track supplied by a supported site, translates segments with context, and displays bilingual subtitles according to playback position. Local caching reduces repeated requests when revisiting a section. The supported sites include YouTube, Udemy, Coursera, and Khan Academy. The source video must already have a readable subtitle track. The extension does not transcribe audio or generate missing subtitles. !Bilingual subtitles displayed during video playback My goal was to keep watching in the existing player, with the original subtitles available for comparison. Continuing the same reading approach with books and PDFs Local ebooks used to mean switching applications and configuring another reading environment. I added an EPUB reader so I could import a DRM-free book, read it chapter by chapter, and keep the same bilingual or translation-only display choices. The library, reading progress, and EPUB bookmarks stay in the current browser profile. There is no OnlyTranslate account or cloud library. !OnlyTranslate EPUB reader The library also supports local PDFs and directly accessible online PDFs. The PDF reader offers original-page comparison and separate original, bilingual, and translation-only display modes. An optional local layout model can help with reading order on complex pages. EPUB and PDF reading remain in beta. PDFs need extractable text: image-only scans have no OCR support, and complex layouts can still produce imperfect results. MOBI and DRM- or password-protected books are not supported. !OnlyTranslate PDF reader feature illustration The storage boundary matters here. Original EPUB and PDF files stay in the browser. When an online translation service is used, the text needed for translation is sent to that service. Local storage does not make online translation an entirely local process. Removing a book deletes its saved reading data. Uninstalling the extension or clearing its storage removes the library, so backing it up is important. Letting the reader choose the translation service Translation quality, speed, privacy, and cost vary between providers. I did not want the extension to make that choice permanent. OnlyTranslate includes no-setup options such as Microsoft Translator and Google Translate, alongside services that use the reader's own API key. Chrome's built-in translation is another option when the browser and language pair support it. The extension itself is free, with no OnlyTranslate subscription. Third-party providers may require accounts, impose quotas, or charge for usage. Their privacy policies also apply to the text they receive. Settings, cache, and the library are stored locally, and the project does not collect extension usage data. Those choices still leave the reader responsible for choosing a provider they are comfortable using. What I want to learn from other readers OnlyTranslate now supports Chrome, Edge, and Firefox. It still has the usual browser extension boundaries: browser-internal pages, extension stores, and some embedded or restricted content cannot be translated. Complex and changing pages can have missed text or layout problems. The project has grown around my work and reading habits. Sharing it gives me a chance to find out what I have missed: which pages people actually read, where the scope choices are confusing, and which operations take more effort than they should. I expect those concrete problems to guide the next changes. A useful improvement might make translation more dependable, make reading less interrupted, or remove a confusing step. It does not need to add another item to a feature list. For anyone working on similar browser tools, I would be interested in your experience: where do you draw the line between automatic content selection and giving the reader an explicit choice? The implementation and current limitations are available in the OnlyTranslate repository. _Translation note: AI was used to help translate and edit the English version of my Chinese draft._

  2. 开源网页翻译插件「流畅阅读」更新了:网页双语翻译 + YouTube 视频翻译 + 字幕下载,一个插件全包。Chrome / Edge / Firefox 都能装,GitHub 开源免费。 FluentRead/FluentRead

    18 views
  3. FluentRead ⭐ 8.4k FluentRead is an open-source browser extension that translates web pages for immersive reading. 🔗 Bistutu/FluentRead #opensource t.co

    1 view
  4. FluentRead 是一款开源浏览器双语翻译扩展,在原始网页旁直接显示译文,覆盖网页、图片、文档与视频字幕翻译,并内置 AI 阅读卡片和学习中心,让用户用母语顺畅阅读外文内容。FluentRead/FluentRead

    5 likes · 596 views
  5. X · · @geekbb

    才发现流畅阅读更新了,Chrome 开源插件中,网站翻译做的最好,YouTube 翻译用起来也很顺手,平时都是用它下载字幕,然后 Agent 总结。再次推荐 FluentRead/FluentRead t.co

    61 likes · 1 repost · 7,492 views

Latest stargazers

The last 10 distinct accounts we observed this year.

Most active participants

PR, issue, comment & review events in the past year.

Packages

No packages found.

README badges

Embed a badge in your README or website.

Live mentions · last 30 days
Bistutu/FluentRead mentions in the last 30 days