Bistutu/FluentRead

An open-source browser extension for bilingual translation. 一款开源的浏览器双语翻译插件。

TypeScript

8,493

3,378 commits

updated Oct 17, 2026

See the code

README

FluentRead

FluentRead

Closer languages. A bigger world.

An open-source browser extension for bilingual translation.

Install · Website · User guide · Privacy policy · 简体中文 · LINUX DO Community · GPL-3.0

FluentRead displays translations alongside the original webpage and provides selection translation, AI reading assistance, image and document translation, and bilingual video subtitles. Its reading card integrates a browser adaptation of the DeepSeek Harness session core for contextual explanations and follow-up questions.

FluentRead bilingual webpage translation

Features

FeatureDescription
Webpage translationBilingual page translation, hover and selection translation, original-text restoration, and automatic translation rules.
AI reading cardMeaning, sentence analysis, usage explanations, and practice, with paragraph context and follow-up questions.
Learning centerSave words, phrases, and sentences with their original context for study and review.
Image and area translationRecognize text in webpage images or selected screen areas and display translations that can be copied.
Document translationRead PDF, ePub, DOCX, and other supported formats in two languages, edit translations, and export files.
Video subtitlesBilingual subtitles on YouTube and X; supported X videos can also use local AI transcription.
Services and settingsFree translation services, DeepL, AI providers, and local Ollama models, with glossaries, translation styles, shortcuts, and menu layout settings.

See the user guide for instructions and supported formats. AI explanations require a configured AI service. Third-party pricing and availability depend on the provider.

DeepSeek Harness

The reading card adapts the conversation-event and message organization components of the DeepSeek Harness session core for the browser. FluentRead connects these to the selected text, permitted paragraph context, model services, and local reading history. It supports different AI providers and models, with optional learning memories.

The adaptation is used for selection-based reading assistance. Full-page, hover, and regular selection translation use their respective translation pipelines. See the integration map for scope and upstream references, and the third-party notice for its MIT license.

Reading card guide

Installation

Chrome · Edge · Firefox · Userscript

  1. Install the extension and refresh the webpage.
  2. Open FluentRead and select a target language. The source language defaults to automatic detection and can also be selected manually.
  3. Choose “Translate page.” Enable selection translation and other tools in settings as needed.

Store updates may arrive at different times. The userscript provides core webpage translation features. See the installation guide for browser and feature availability.

Local development

Requirements: Node.js 20 or later and pnpm 9.

pnpm install --frozen-lockfile
pnpm dev

Use pnpm build to build the Chrome extension and pnpm zip to generate one -chrome.zip, preserving its public key, fixed extension ID, and Google OAuth configuration. Use the same ZIP for manual installation and preparation for an update to the existing Chrome Web Store item. Packaging removes the obsolete -chrome-store.zip for the same version. See extension identity and packages for details.

Use pnpm build:firefox to build the Firefox extension, pnpm zip:firefox to generate its installation and review-source ZIPs, and pnpm zip:edge to generate the separate Microsoft Edge Add-ons ZIP without the Chrome key. The review-source ZIP includes the extension build inputs; website assets, test evidence, and other distribution targets are omitted. Use pnpm compile for type checking and pnpm docs:build to build the website. See architecture and testing for project conventions.

Run pnpm storybook to explore the real Vue components and interface themes locally. See the design system guide. Use pnpm docs:build:site to build the documentation with the component explorer.

Contributing

Report bugs and propose changes through Issues. Pull requests for code, documentation, interface translations, and website adaptation are welcome.

Support

FluentRead is an open-source project whose continued development is made possible by the generous support of its community. Voluntary contributions are welcome through either service.

WeChat SupportKo-fi · International
Thinkstu’s WeChat support code
Scan with WeChat. Click the image to enlarge.
Support thinkstu on Ko-fi ↗

ko-fi.com/thinkstu

Acknowledgments

FluentRead grows alongside a vibrant open-source community. We are grateful to the following projects and their contributors for their openness and generosity:


BistutuWindChimeEchodf123RayySummershewigovensmemweyzhitiaoMeursau1T520250lemonteaauCalcium-Ionpluwenz0gSh1uLIBai11faintbeardamingsuLinmonKAlkacidyolo2hSyrupyTastyNaCodermerMrWangJustToDohu3rrorBalconyJH

Thank you to everyone who has contributed to FluentRead, including the many we couldn't name here, and to every user for embracing a product that is still far from perfect. We hope to keep building together with you, and to bring a little more good into the world.

License and privacy

FluentRead is released under GPL-3.0. See third-party notices for component attribution and licenses.

Settings and learning records stay local by default; cloud translation uses your selected provider. Optional cloud configuration backup supports Google Drive and WebDAV, including service credentials while excluding wordbooks, conversations, and usage statistics. See the privacy policy for permissions, encryption, and deletion details.

Bistutu/FluentRead

An open-source browser extension for bilingual translation. 一款开源的浏览器双语翻译插件。

TypeScript

8,493

3,378 commits

updated Oct 17, 2026

See the code

README

FluentRead

FluentRead

Closer languages. A bigger world.

An open-source browser extension for bilingual translation.

Install · Website · User guide · Privacy policy · 简体中文 · LINUX DO Community · GPL-3.0

FluentRead displays translations alongside the original webpage and provides selection translation, AI reading assistance, image and document translation, and bilingual video subtitles. Its reading card integrates a browser adaptation of the DeepSeek Harness session core for contextual explanations and follow-up questions.

FluentRead bilingual webpage translation

Features

FeatureDescription
Webpage translationBilingual page translation, hover and selection translation, original-text restoration, and automatic translation rules.
AI reading cardMeaning, sentence analysis, usage explanations, and practice, with paragraph context and follow-up questions.
Learning centerSave words, phrases, and sentences with their original context for study and review.
Image and area translationRecognize text in webpage images or selected screen areas and display translations that can be copied.
Document translationRead PDF, ePub, DOCX, and other supported formats in two languages, edit translations, and export files.
Video subtitlesBilingual subtitles on YouTube and X; supported X videos can also use local AI transcription.
Services and settingsFree translation services, DeepL, AI providers, and local Ollama models, with glossaries, translation styles, shortcuts, and menu layout settings.

See the user guide for instructions and supported formats. AI explanations require a configured AI service. Third-party pricing and availability depend on the provider.

DeepSeek Harness

The reading card adapts the conversation-event and message organization components of the DeepSeek Harness session core for the browser. FluentRead connects these to the selected text, permitted paragraph context, model services, and local reading history. It supports different AI providers and models, with optional learning memories.

The adaptation is used for selection-based reading assistance. Full-page, hover, and regular selection translation use their respective translation pipelines. See the integration map for scope and upstream references, and the third-party notice for its MIT license.

Reading card guide

Installation

Chrome · Edge · Firefox · Userscript

  1. Install the extension and refresh the webpage.
  2. Open FluentRead and select a target language. The source language defaults to automatic detection and can also be selected manually.
  3. Choose “Translate page.” Enable selection translation and other tools in settings as needed.

Store updates may arrive at different times. The userscript provides core webpage translation features. See the installation guide for browser and feature availability.

Local development

Requirements: Node.js 20 or later and pnpm 9.

pnpm install --frozen-lockfile
pnpm dev

Use pnpm build to build the Chrome extension and pnpm zip to generate one -chrome.zip, preserving its public key, fixed extension ID, and Google OAuth configuration. Use the same ZIP for manual installation and preparation for an update to the existing Chrome Web Store item. Packaging removes the obsolete -chrome-store.zip for the same version. See extension identity and packages for details.

Use pnpm build:firefox to build the Firefox extension, pnpm zip:firefox to generate its installation and review-source ZIPs, and pnpm zip:edge to generate the separate Microsoft Edge Add-ons ZIP without the Chrome key. The review-source ZIP includes the extension build inputs; website assets, test evidence, and other distribution targets are omitted. Use pnpm compile for type checking and pnpm docs:build to build the website. See architecture and testing for project conventions.

Run pnpm storybook to explore the real Vue components and interface themes locally. See the design system guide. Use pnpm docs:build:site to build the documentation with the component explorer.

Contributing

Report bugs and propose changes through Issues. Pull requests for code, documentation, interface translations, and website adaptation are welcome.

Support

FluentRead is an open-source project whose continued development is made possible by the generous support of its community. Voluntary contributions are welcome through either service.

WeChat SupportKo-fi · International
Thinkstu’s WeChat support code
Scan with WeChat. Click the image to enlarge.
Support thinkstu on Ko-fi ↗

ko-fi.com/thinkstu

Acknowledgments

FluentRead grows alongside a vibrant open-source community. We are grateful to the following projects and their contributors for their openness and generosity:


BistutuWindChimeEchodf123RayySummershewigovensmemweyzhitiaoMeursau1T520250lemonteaauCalcium-Ionpluwenz0gSh1uLIBai11faintbeardamingsuLinmonKAlkacidyolo2hSyrupyTastyNaCodermerMrWangJustToDohu3rrorBalconyJH

Thank you to everyone who has contributed to FluentRead, including the many we couldn't name here, and to every user for embracing a product that is still far from perfect. We hope to keep building together with you, and to bring a little more good into the world.

License and privacy

FluentRead is released under GPL-3.0. See third-party notices for component attribution and licenses.

Settings and learning records stay local by default; cloud translation uses your selected provider. Optional cloud configuration backup supports Google Drive and WebDAV, including service credentials while excluding wordbooks, conversations, and usage statistics. See the privacy policy for permissions, encryption, and deletion details.

Significant stargazers

Wanderlust

8 followers · starred Aug 2025

JimMoen

41 followers · starred Feb 2025