whatisgithub

What is imp-translate?

rxliuli/imp-translate — explained in plain English

Analysis updated 2026-05-18

1TypeScriptAudience · generalComplexity · 2/5Setup · easy

In one sentence

A browser extension that shows a bilingual translation beneath each paragraph of a web page on request.

Mindmap

mindmap
  root((Imp Translate))
    What it does
      Bilingual page translation
      On demand only
      Shadow DOM isolation
    Tech stack
      TypeScript
      Browser extension
    Use cases
      Reading foreign pages
      Site specific rules
      Dynamic content handling
    Audience
      General readers
    Platforms
      Chrome
      Firefox
      Safari

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Read a foreign-language web page with the translation displayed right beneath each paragraph.

USE CASE 2

Translate dynamically loading content on single-page apps without breaking the page's own styling.

USE CASE 3

Write custom site rules to exclude specific elements from translation.

USE CASE 4

Connect the extension to your own OpenAI-compatible API key or Google or Microsoft Translator.

What is it built with?

TypeScript

How does it compare?

rxliuli/imp-translate0xkinno/neuralvault0xmayurrr/ai-contractauditor
Stars111
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasyhardeasy
Complexity2/54/52/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Needs an OpenAI-compatible API key, Google Translate, or Microsoft Translator access configured to translate.

So what is it?

Imp Translate is a browser extension that shows bilingual translations of web pages. When you ask it to translate a page, it displays the translation directly beneath each original paragraph, so you can read both languages side by side. Nothing is injected into the page until you explicitly request a translation, so no floating buttons or popups appear while you browse normally. The extension works across Chrome, Edge, Firefox, and Safari, including mobile versions. It connects to translation services via OpenAI-compatible APIs, Google Translate, or Microsoft Translator. Under the hood, a DOM walker, code that navigates a page's structure, identifies only currently visible text, so it handles single-page apps, content that loads as you scroll, and dynamically updated text. A shadow DOM, an isolated section of the page structure, keeps the injected translation interface from interfering with the host page's own styles. To control which parts of a page get translated or skipped, the extension uses site-specific rules stored in a plain text file following a syntax similar to ad-blockers. Rules can target individual elements to exclude them from translation or restrict translation to a specific area. Users can add custom rules through the browser's Developer Mode settings. Imp Translate is intentionally narrow: it does not translate selected words, video subtitles, documents, or input fields. It focuses on making full-page bilingual reading work reliably for the most-visited websites rather than covering every possible use case. The project is written in TypeScript.

Copy-paste prompts

Prompt 1
Show me how to install Imp Translate and connect it to an OpenAI-compatible translation API.
Prompt 2
Explain how Imp Translate's site-specific rule syntax works so I can exclude an element from translation.
Prompt 3
Help me write a rule file for Imp Translate that only translates the main article body of a page.
Prompt 4
Compare what Imp Translate does and does not translate, like subtitles or input fields.

Frequently asked questions

What is imp-translate?

A browser extension that shows a bilingual translation beneath each paragraph of a web page on request.

What language is imp-translate written in?

Mainly TypeScript. The stack also includes TypeScript.

How hard is imp-translate to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is imp-translate for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.