Read PDF and EPUB with bionic fixation.
Open a document and every page looks the way it was printed, with its figures, colours and layout. Only now the leading letters of each word carry the weight. It all happens inside the extension, so nothing is uploaded.
- No upload
- No account
- No remote code
- 2formats, PDF and EPUB
- 5reading modes
- 160tests across 8 files
- 0network requests for content
Live demo
Try the reader, right here
This is the same compiled fixation code the extension ships, running in this page. Switch documents, turn pages, change the mode, or paste your own text.
Before and after
The same page, switched on
Drag the divider, or focus it and use the arrow keys. Left of the line is what the extension shows; right of it is the page as written.
What it does
A reader that leaves your document alone
Most bionic tools strip a PDF down to plain text. Bionic Docs keeps the page and puts the emphasis on top of it.
Pages as they were printed
PDF.js draws each page to a canvas: images, diagrams, colours and all. The text is laid back over it in the same position and width, then emphasized, so columns, captions and equations keep their shape.
Fit page, fit width, 50 to 300%
Pages open fitted to the window. Zoom keeps your place on the page, and + − 0 work from the keyboard.
EPUB, reflowed
Books are unzipped in memory, their chapters sanitized and reflowed, and their own table of contents becomes the Contents panel.
Five reading modes
The same fixation algorithm as its sibling, Bionic Page, with a live intensity control. Changes apply as you move the slider.
Picks up where you left off
Reopen a document and the reader offers your last page or chapter. It remembers the last 25 documents, on this device only.
Made for the keyboard
Turn pages, jump to either end, zoom and open the contents without reaching for the mouse. Menus are drawn by the extension and work with arrows, Enter and type-ahead.
Reading modes
Each mode anchors a different part of the word
Every sample below is rendered live by the code the extension runs, so what you see here is what you get in a document.
Half
DefaultComprehension builds steadily through careful attention.
The first half of each word, as in Bionic Reading.
Classic
Comprehension builds steadily through careful attention.
A leading share of each word; intensity sets how much.
Vowel anchor
Comprehension builds steadily through careful attention.
Up to the first vowel group; suited to many languages.
Low distraction
Comprehension builds steadily through careful attention.
The prefix stays, the rest of the word fades back.
Custom rule
Comprehension builds steadily through careful attention.
Per-length letter counts, plus a fraction for long words.
How it works
Sniff, parse, emphasize
Three steps, all inside the extension page. The document is never parsed anywhere else.
-
01
Sniff
The first bytes decide the path:
%PDF-goes to PDF.js, aPKzip with an EPUB container goes to the book reader. File names are not trusted. -
02
Parse on device
A bundled PDF.js renders each page and reports where its text sits. An EPUB is unzipped with fflate; its OPF gives the spine, its nav or NCX the contents.
-
03
Emphasize
The fixation step wraps each word's opening in
<b>. It only touches text nodes, so a mode change repaints in place and the original bytes are never modified.
reader.html?src=… for the current tab or a picked filePrivacy
There is no server.
Bionic Docs has nowhere to send your document. There is no backend, no analytics and no account, and a test fails the build if a network call appears anywhere in the source except the one that loads the file you opened.
- PDF.js, its worker, cmaps and fonts are bundled
- No
eval, no remote scripts, a strict extension CSP - EPUB chapters are sanitized before they are shown
Honest limits
What it does not do
The limits are part of the contract, not footnotes.
Scanned PDFs
A scan has no text layer, so the page is shown as the image it is, without emphasis. OCR is out of scope for now.
Embedded fonts
Emphasized text is drawn in the browser's own fonts, stretched to the original width, so letter shapes can differ from the document's.
Special glyphs
Text PDF.js paints inside transparency groups or as Type 3 glyphs keeps its original look and does not get the emphasis.
Book styling
EPUB rendering is intentionally minimal: no pagination and no publisher CSS beyond the sanitized chapter markup.
Install
Build it from source
Store listings are pending. One source tree builds both targets; load the one for your browser.
- 1Run the four commands on the right. You need Bun.
- 2Chrome or Edge: open
chrome://extensions, turn on Developer mode, choose Load unpacked and pickdist/chrome. - 3Firefox 140+: open
about:debugging, This Firefox, Load Temporary Add-on, and pickdist/firefox/manifest.json.
$ git clone https://github.com/srivtx/bionic-docs $ cd bionic-docs $ bun install $ bun run build built dist/chrome built dist/firefox
FAQ
Questions, answered plainly
Does my document get uploaded anywhere?
No. The file is read and parsed inside the extension page. There is no server to send it to, and the source is checked by a test that fails on any other network call.
Will the PDF still look like the PDF?
Yes. Each page is drawn as it was printed, figures and colours included, and the emphasized text sits in the same place on top. Only the letter shapes of the emphasized text can differ, because the browser's fonts stand in for the embedded ones.
Can I open PDFs from my computer?
Yes. Use Open a file… in the popup, or drag a file onto the reader. To open file:// PDFs that are already in a tab, allow file access for the extension in your browser's extension settings.
Does it work offline?
Yes. Everything it needs, PDF.js and its fonts included, is in the package. Nothing is fetched at run time.
Why does Firefox need version 140?
The manifest declares that the extension collects no data, and Firefox only understands that declaration from version 140.
Is this Bionic Reading?
No. It is an independent, MIT-licensed project that uses its own fixation algorithm, shared with its sibling Bionic Page. It is not affiliated with Bionic Reading GmbH.
Your documents, easier to follow.
Free, open source and on-device. Build it in a minute.