Mangalens

MangaLens πŸ”

Translate manga and webtoon panels instantly using AI β€” directly in your browser.

MangaLens is a Chrome extension that adds a one-click translate button to manga and webtoon panels. It captures the panel, sends it to an AI vision model, and overlays the translated text directly on the page β€” no copy-pasting, no switching tabs.


Features


Supported Sites

Site URL
Naver Webtoon comic.naver.com
Webtoons webtoons.com
MangaDex mangadex.org
Viz viz.com
Tapas tapas.io
Kakao Webtoon webtoon.kakao.com
Toonily toonily.com
Bato.to bato.to
Manganato manganato.com
Chapmanganato chapmanganato.to
Reaper Scans reaperscans.com
Flame Scans flamescans.org
Asura Scans asurascans.com
Manga Kakalot mangakakalot.com
MangaHere mangahere.cc
MangaPark mangapark.net
MangaSee mangasee123.com
+ more see manifest.json

AI Providers

MangaLens supports 4 AI providers. You choose which one to use in the popup.

Best translation quality. Understands manga context, slang, and tone naturally.

GPT-4o mini (OpenAI)

Great quality at a much lower cost. Fast and reliable.

GPT-4.1 Nano (OpenAI)

Fastest and cheapest OpenAI option. Good for casual reading.

Ollama (Local / Free)

Runs entirely on your machine β€” no API key, no cost, no data sent anywhere.


Installation

From Chrome Web Store

Search for MangaLens on the Chrome Web Store and click Install.

Manual (Developer Mode)

  1. Download and unzip the extension
  2. Open Chrome and go to chrome://extensions
  3. Enable Developer mode (top right toggle)
  4. Click Load unpacked and select the unzipped folder
  5. The purple M icon will appear in your toolbar

Setup

Claude or OpenAI

  1. Click the MangaLens icon (purple M) in the Chrome toolbar
  2. Select your preferred provider tab (Claude / GPT-4o / 4.1 Nano)
  3. Enter your API key and click Save

Ollama (Local AI)

  1. Install Ollama from ollama.com
  2. Pull the vision model:
    ollama pull minicpm-v:latest
    
  3. Fix CORS so the extension can reach Ollama (run PowerShell as Administrator):
    [System.Environment]::SetEnvironmentVariable("OLLAMA_ORIGINS", "*", "Machine")
    taskkill /F /IM ollama.exe
    

    Then reopen Ollama from the Start menu.

  4. In the MangaLens popup, select the Ollama tab and click Check connection

How to Use

  1. Go to any supported manga or webtoon site
  2. Open an episode/chapter
  3. Hover over a panel β€” a purple 🌐 Translate button appears
  4. Click it β€” the translation overlays directly on the panel within a few seconds
  5. Click anywhere on the overlay to dismiss it

Auto-translate

Toggle ⚑ Auto-translate on scroll in the popup to automatically translate panels as they enter the viewport. Useful for binge-reading.

Translate All

Click 🌐 Translate all visible panels in the popup to queue all panels on the current page at once.

Clear Cache

Click πŸ—‘ Clear cache in the popup footer to remove all cached translations (useful if you switch providers or languages).


How It Works

User clicks Translate
  β†’ content.js captures panel position
  β†’ Scrolls panel into view in 80% viewport slices (for tall panels)
  β†’ background.js takes screenshot via captureVisibleTab
  β†’ Crops screenshot to panel bounds using OffscreenCanvas
  β†’ Detects speech bubble positions using canvas connected-components
  β†’ Sends image to selected AI provider (Claude / OpenAI / Ollama)
  β†’ AI returns JSON: [{original, translation, x_pct, y_pct, type}]
  β†’ content.js renders translation bubbles as absolute-positioned overlays
  β†’ Results cached for 7 days keyed by URL + panel position

Image Formats


File Structure

mangalens/
β”œβ”€β”€ manifest.json       β€” MV3 manifest, permissions, site list
β”œβ”€β”€ background.js       β€” Screenshot capture, AI API calls, cache, bubble detection
β”œβ”€β”€ content.js          β€” Panel detection, scroll capture, overlay rendering, FAB button
β”œβ”€β”€ overlay.css         β€” Translation bubble styles
β”œβ”€β”€ popup.html          β€” Extension popup UI (4 provider tabs)
β”œβ”€β”€ popup.js            β€” Popup logic, settings save/load, Ollama connection check
└── icons/
    β”œβ”€β”€ icon-16.png
    β”œβ”€β”€ icon-48.png
    └── icon-128.png

Permissions

Permission Why it’s needed
activeTab Capture a screenshot of the current tab when the user clicks Translate
storage Save API keys and preferences locally on your device

No other permissions are requested. Your API keys are stored locally and never sent to the developer.


Privacy

MangaLens does not collect any data. The developer receives nothing.

See the full Privacy Policy.


Troubleshooting

Translate button doesn’t appear

Translation returns empty

Ollama not connecting

Ollama CUDA crashes

Bubbles appear in wrong position


Contributing

Found a bug or want a new site added? Open an issue on GitHub.

When reporting a bug, please include:


License

MIT License β€” free to use, modify, and distribute.


Built with ❀️ for the manga community