ReadYouApp / ReadYouApp/ReadYou

[Feature Proposal]: In-App Article Translation (On-Device)

Open
#1,327 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement untriaged
Dominant language
Kotlin
Stars
7.5k
Forks
330
PR merge metrics
No merged PRs in 30d

Description

Checklist
  • I've already searched in existing issues and haven't found a similar feature request.
Which category best fits this feature request?

Integration with other apps

Is your feature request related to a problem? Please describe.

Many users subscribe to international RSS feeds but often encounter articles written in languages they don't fully understand. Currently, users have to leave the app and copy-paste the text into an external translation app or browser, which breaks the seamless reading experience.

Describe the solution you'd like

Technical Implementation Thoughts
Since RSS content is rendered in HTML, passing raw strings to ML Kit would break the tags (e.g., <p>, <a>, <img>).
My proposed workflow:

  1. Add a "Translate" button/icon in the article view's bottom or top app bar.
  2. When triggered, parse the article's HTML (using Jsoup or the app's existing parser).
  3. Extract only the text nodes, pass them to ML Kit.
  4. Reconstruct the translated text nodes back into the DOM without altering the original HTML structure and image tags.
  5. Re-render the translated HTML.

Questions for Maintainers
Before I start working on this and open a Pull Request, I'd love to hear your thoughts:

  1. Are you open to adding com.google.mlkit:translate as a dependency?
  2. Where would you prefer the "Translate" button to be placed in the UI (e.g., article overflow menu, top bar)?
  3. Any specific architectural guidelines I should follow for this implementation?

Looking forward to contributing!

Related links

No response

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no repository files or tests. Start by locating the article view and the app's existing HTML parser, then review how article content is rendered and whether ML Kit translation is acceptable; done means an in-app translation flow that preserves HTML structure and image tags.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
localization, mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.