Version history

Everything we have shipped,
since the beginning.

NamahaPDF has been built in the open since 2024, growing from three rough tools into a document engine of our own, and an SDK other developers build on. Here is every release, and what each one changed.

Current version
v2.8.1
Engine
3.4.1
Releases
28
0.1.0Dec 2024
0.2.0Jan 2025
0.3.0Feb 2025
0.4.0Mar 2025
0.5.0Apr 2025
0.6.0Jun 2025
0.7.0Jul 2025
0.8.0Aug 2025
0.9.0Sept 2025
0.9.5Oct 2025
1.0.0Nov 2025
1.1.0Dec 2025
1.2.0Jan 2026
1.3.0Feb 2026
1.4.0Mar 2026
1.5.0Apr 2026
1.6.0Jun 2026
2.0.0Jun 2026
2.1.0Jul 2026
2.2.0Jul 2026
2.3.0Jul 2026
2.4.0Aug 2026
2.5.0Aug 2026
2.5.1Aug 2026
2.6.0Aug 2026
2.7.0Sept 2026
2.8.0Sept 2026
2.8.1Sept 2026

Scroll the timeline, or use the arrow keys, to move between releases.

v2.8.1September 2026Engine 3.4.1

Rendering: gradients keep their colour, scans stop coming out as negatives, and photographs stop disappearing

We benchmarked our renderer against PDFium, pdf.js and MuPDF on 200 real government documents, specifically to find where we were behind. It found eight genuine defects — every one a case where the page looked plausible rather than obviously broken — plus a problem in the benchmark itself that had been making us look worse than we were.

  • Gradients and shaded fills now render in the document’s own colour: a CMYK gradient used to be painted as though its four ink values were red, green and blue, so a cyan-to-blue banner came out red-to-orange
  • Spot colours (Separation and DeviceN) in a gradient now go through the document’s own ink-mixing function instead of being approximated as grey
  • Scanned fax pages came out as their own negative — mostly black, with diagonal streaks — because the stencil that carries the scan was painting the paper instead of the ink. Scanned documents now render the right way round, and without the skew
  • Photographs were being dropped from a page entirely, for two separate reasons: one when the JPEG was wrapped in a second encoding (ordinary in a PDF written for email), and one when a file’s image data was a fraction of a percent shorter than its declared size. A sheet of four satellite images that rendered completely blank now matches the reference
  • Spot colours used as ordinary fills — a Pantone ink behind an article, a coloured rule — painted solid black whenever the document described that ink by reference to a colour profile, which is how every real document describes it. They now render in the ink’s own colour
  • Photographs stored as JPEG 2000 no longer lose their midtones: the CMYK-to-screen conversion used an approximation that is exact for flat artwork and crushes every shadow in a photograph to black
  • Documents mixing several spot inks at once (a Cyan-plus-Magenta-plus-Black recipe) had all but the first ink ignored
  • Our share of real-world pages matching the reference consensus rose from 89.2% to 92.3%, and the worst page in the corpus went from differing in 98% of its pixels to 2%
Open a PDF

All releases

The same 28 releases, newest first, in full.

  1. v2.8.1

    · Engine 3.4.1

    Rendering: gradients keep their colour, scans stop coming out as negatives, and photographs stop disappearing

    We benchmarked our renderer against PDFium, pdf.js and MuPDF on 200 real government documents, specifically to find where we were behind. It found eight genuine defects — every one a case where the page looked plausible rather than obviously broken — plus a problem in the benchmark itself that had been making us look worse than we were.

    • Gradients and shaded fills now render in the document’s own colour: a CMYK gradient used to be painted as though its four ink values were red, green and blue, so a cyan-to-blue banner came out red-to-orange
    • Spot colours (Separation and DeviceN) in a gradient now go through the document’s own ink-mixing function instead of being approximated as grey
    • Scanned fax pages came out as their own negative — mostly black, with diagonal streaks — because the stencil that carries the scan was painting the paper instead of the ink. Scanned documents now render the right way round, and without the skew
    • Photographs were being dropped from a page entirely, for two separate reasons: one when the JPEG was wrapped in a second encoding (ordinary in a PDF written for email), and one when a file’s image data was a fraction of a percent shorter than its declared size. A sheet of four satellite images that rendered completely blank now matches the reference
    • Spot colours used as ordinary fills — a Pantone ink behind an article, a coloured rule — painted solid black whenever the document described that ink by reference to a colour profile, which is how every real document describes it. They now render in the ink’s own colour
    • Photographs stored as JPEG 2000 no longer lose their midtones: the CMYK-to-screen conversion used an approximation that is exact for flat artwork and crushes every shadow in a photograph to black
    • Documents mixing several spot inks at once (a Cyan-plus-Magenta-plus-Black recipe) had all but the first ink ignored
    • Our share of real-world pages matching the reference consensus rose from 89.2% to 92.3%, and the worst page in the corpus went from differing in 98% of its pixels to 2%

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  2. v2.8.0

    · Engine 3.4

    Compression rebuilt: median government PDF 21% smaller, office document 45%

    The compressor was measured against a corpus of real documents and rebuilt around what that measurement showed. It now sizes images by the resolution they are actually printed at rather than their pixel count, and it subsets embedded fonts — which is where most of an office document’s weight turns out to live. Every result is checked by rendering the output and comparing it to the original.

    • Median reduction went from 13.1% to 21.4% across a 200-file sample of US government PDFs, and from 8.6% to 44.7% on a 41-document set of everyday office files
    • Fonts are subset to the glyphs a document actually uses: Word embeds all 6,954 glyphs of Calibri where a letter paints about thirty
    • Images are resampled by effective resolution, so an over-detailed logo shrinks and a full-page photo is left alone
    • Three documents that used to crash the tool now compress or explain themselves; one that was silently emptied is now caught before you ever see it
    • Duplicate streams merged, unreferenced objects dropped, and legacy filter chains rewritten as modern compression
    • Tested against 2,233 deliberately awkward files from the pdf.js and veraPDF corpora: nothing crashed and nothing came back larger
    • Encrypted files are now refused with an explanation instead of being quietly corrupted
    • A PDF/UA or PDF/A conformance claim now survives compression instead of being stripped with the rest of the metadata

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  3. v2.7.0

    · Engine 3.3

    Eighteen new tools, and the suite reaches fifty

    The biggest single addition to the tool suite so far: booklet and poster imposition, page dividing, blank-page removal, grayscale and dark-mode conversion, metadata editing, attachments, headers and footers, table extraction to Excel, Markdown and JSON export, and a document comparison tool. PDF to Excel finally ships for real, and every one of the eighteen runs entirely in the browser.

    • Extract Tables and PDF to Excel: tables out as CSV, Excel, JSON or Markdown — borderless ones are flagged as inferred rather than passed off as certain
    • Compare PDFs: a page-by-page visual and text diff, with neither document leaving your machine
    • PDF Booklet, Divide Pages, Posterize, Alternate & Mix, Remove Blank Pages
    • Grayscale, Invert Colours and Rasterize; Edit and Remove Metadata; Add and Extract Attachments; Header & Footer
    • PDF to Markdown and PDF to JSON, including chunks ready for an AI pipeline
    • The accessibility sweep now derives its route list from the sitemap, so a new page can no longer ship unaudited

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  4. v2.6.0

    · Engine 3.2

    The editor now runs on WordPress

    A WordPress plugin puts the whole editor on any page with a shortcode or a block, and a new standalone build does the same for any site that has no build step at all. Reading, annotating and signing stay free everywhere; editing asks for a licence, and now says so with a padlock instead of letting you type and then refusing.

    • A WordPress plugin: [namahapdf_editor] or the NamahaPDF Editor block, on any page
    • A standalone browser build — one script tag, no bundler, for sites that are not React apps
    • Licence-gated tools show a padlock and explain what a licence adds, instead of failing an edit you already made
    • Documents still never leave the visitor’s device — the plugin has no upload path at all

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  5. v2.5.1

    · Engine 3.2

    The edit box lines up with the line

    Clicking text to edit it opened the typing box a few pixels below the words it replaced — badly enough to notice on documents set in small type, and invisible on the rest. The finished edit always landed correctly; you just could not tell that while you were typing, which is its own kind of broken.

    • The inline edit box now opens exactly on the baseline of the text it replaces
    • The same fix applies to the box you get when you select several lines at once, which was never aligned at all

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  6. v2.5.0

    · Engine 3.2

    The slide editor works without a mouse

    Every shape and table cell on a slide can now be reached, edited, moved and resized from the keyboard, and announced by a screen reader — the same model the PDF editor got last week. Along the way an automated sweep of the PDF editor’s panels turned up four controls that were unlabelled or too faint, and those are fixed too.

    • Arrow keys move between shapes and table cells on a slide; Enter edits, Space picks up and moves
    • Slides can be reordered from the keyboard instead of only by dragging
    • Screen readers now announce what is selected on a slide, and where it sits in the reading order
    • The page-number box, the opacity slider and the AI provider list all have proper labels
    • The active Find & Replace button and the delete-page button are dark enough to read

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  7. v2.4.0

    · Engine 3.2

    A typeface of our own, and a long look at fidelity

    NamahaPDF now sets its text in Namaha Sans, a typeface we build ourselves. Underneath, we ran the engine over a corpus of a thousand real documents and fixed everything that came back wrong, including one case where editing a protected file could quietly damage it.

    • Namaha Sans became the interface typeface across the whole site
    • Editing a password-protected PDF now stops with a clear message instead of risking the file
    • Documents that only restrict printing or copying, with no password to type, open normally again
    • Damaged font tables inside PDFs are repaired on the way out, so exports stay valid
    • Headings are detected down to six levels, so converted documents keep their outline

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.3.0

  8. v2.3.0

    · Engine 3.1

    Accessibility, checked and actually fixed

    A free checker that tests any PDF against WCAG 2.1 AA and PDF/UA, and then repairs it, which is the harder half. Every finding cites the standard it comes from, and the repaired file is verified against veraPDF, the ISO reference validator.

    • New tool: check a PDF for accessibility, entirely in your browser
    • Repair a document by writing a real structure tree, so a screen reader can read it in the right order
    • Describe each image or mark it decorative, with a thumbnail of what you are describing
    • Export the result as a compliance report PDF, or the findings as a CSV worklist
    • Verified against the PDF/UA reference corpus with no regressions

    SDK: @namahapdf/core@1.0.0 · @namahapdf/react@0.3.3 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.3.0 · @namahapdf/docindex@0.2.0

  9. v2.2.0

    · Engine 3.0

    Ask your document

    Chat with a PDF and get answers that cite the page they came from, with the page itself one click away. Or describe an edit in plain words and see exactly what would change before anything is applied. Both run in your browser.

    • New tool: chat with your PDF, with every answer citing a page you can open
    • Edit by describing the change: the editor shows the plan first, and it undoes in one step
    • Search and answers combine keyword and meaning, so exact phrases stop getting missed
    • Re-opening a document you have already asked about is near instant

    SDK: @namahapdf/core@0.4.0 · @namahapdf/react@0.3.2 · @namahapdf/pptx@0.2.1 · @namahapdf/sheets@0.2.1

  10. v2.1.0

    · Engine 2.5

    Slides and sheets, editable

    PowerPoint and Excel files stopped being things we could only look at. Both now open in editors of their own, and edits are written back surgically, so the parts of the file you did not touch come out byte for byte identical.

    • New tool: a slide editor for PowerPoint files, with text, shapes and table cells
    • New tool: a spreadsheet editor with a real formula engine and a fill handle
    • Edits rewrite only what changed, so nothing else in the file is disturbed
    • PowerPoint and Excel support shipped as their own SDK packages

    SDK: @namahapdf/core@0.3.0 · @namahapdf/react@0.3.0 · @namahapdf/pptx@0.1.0 · @namahapdf/sheets@0.1.0

  11. v2.0.0

    · Engine 2.4

    The engine becomes an SDK

    Everything powering the site was published for other developers to build on. The first @namahapdf packages went to npm: the engine itself, and a React component that drops a full document editor into someone else’s app.

    • The document engine published on npm as @namahapdf/core
    • A drop-in React editor component published as @namahapdf/react
    • Offline licence keys, so the SDK works without calling home
    • Full API documentation and an install guide

    SDK: @namahapdf/core@0.1.0 · @namahapdf/react@0.1.1

  12. v1.6.0

    · Engine 2.3

    PowerPoint and Excel come to the engine

    The engine stopped being PDF-only. It learned to read Office files directly, with no conversion service and no server round trip, which is what later made real slide and spreadsheet editing possible.

    • PowerPoint files render in the browser with real text, shapes and theme colours
    • Excel workbooks render on a fast virtualised grid, with number formats and styles
    • PowerPoint to PDF rebuilt on our own renderer
    • PDF to PowerPoint keeps text editable instead of flattening every slide to an image
  13. v1.5.0

    · Engine 2.2

    Accounts, and a signature that proves itself

    Sign a document and have the signature actually mean something: a cryptographic seal any PDF reader can check, so later tampering shows up. Accounts arrived alongside it, and stayed optional for everyday use.

    • Sign and certify a PDF with a tamper-evident cryptographic signature
    • A certificate of completion recording who signed, when, and the document’s fingerprint
    • Sign in with Google or an email and password
    • Quick visual signing stayed free and needs no account
  14. v1.4.0

    · Engine 2.1

    Forms, annotations and redaction

    The editor grew past text. Fill in forms the document already has, build new fields, comment and highlight, and redact properly, removing the content rather than drawing a black box over it.

    • Fill existing PDF form fields, or add your own
    • Highlight, comment, draw and stamp, with everything editable afterwards
    • Redaction that deletes the underlying text, not just covers it
    • Drag text and images around the page directly
    • Undo any action from a visual history of everything you have done
  15. v1.3.0

    · Engine 2.0

    Lines, shapes and letters land where they should

    A long round of rendering work. Vector artwork such as charts, logos and diagrams started drawing correctly, and text moved to positioning each letter individually, which is what fixed characters overlapping each other.

    • Vector graphics, gradients and patterns render properly
    • Text is positioned letter by letter, so glyphs stop colliding
    • Pages that used to stall the browser now render smoothly
    • Many more real-world PDFs open without complaint
  16. v1.2.0

    · Engine 1.4

    Scanned pages become text

    Scanned documents stopped being pictures. Text recognition arrived for images and scanned PDFs, including the awkward case where a scan already carries a hidden text layer that is unreadable.

    • Read text out of scanned PDFs and images
    • Edit the recognised text in the editor like any other text
    • Recover readable text from scans whose hidden layer is garbled
    • Pull every embedded image out of a PDF at full quality
  17. v1.1.0

    · Engine 1.2

    Locked documents, opened

    Password-protected PDFs went from "cannot open" to fully supported. Add protection, remove it when you know the password, and, importantly, open the many files that carry restrictions but no password at all.

    • Add a password and set permissions on any PDF
    • Remove protection from a document you have the password for
    • Encrypted PDFs open and render like any other file
    • Restricted-but-unlocked documents open without asking for a password that does not exist
  18. v1.0.0

    · Engine 1.0

    NamahaPDF 1.0

    The first release under the name NamahaPDF, with a new identity and a rebuilt interface. More than a rename: it marked the point where the whole suite ran on our own engine rather than borrowed pieces.

    • New name, new brand and a redesigned interface throughout
    • Every tool moved onto the in-house engine
    • Rebuilt header, footer and navigation
    • Documents are processed in your browser and never uploaded
  19. v0.9.5

    · Engine 0.9

    Keeping your fonts your fonts

    Edited text used to quietly change typeface. The engine learned to read the fonts embedded in a document and reuse them, so a sentence you change still looks like the sentence next to it.

    • Fonts embedded in a PDF are reused when you edit its text
    • Character maps handled properly, so unusual encodings display correctly
    • Text spacing follows what the document declares rather than a guess
  20. v0.9.0

    · Engine 0.8

    Click a word, change it

    The moment the editor became an editor. Click any piece of text on a page and type. No forms, no overlays, no re-uploading. Getting this right meant knowing exactly which glyph sits under the cursor.

    • Click directly on text in a PDF to edit it in place
    • Precise hit testing, so you select what you are pointing at
    • Edits are written into the document itself rather than layered on top
  21. v0.8.0

    · Engine 0.6

    The first page we drew ourselves

    Our renderer drew its first PDF page. Instead of handing documents to someone else’s viewer, we now execute the drawing instructions ourselves, which is the only way to know where every word sits well enough to edit it.

    • An in-house renderer that draws PDF pages to a canvas
    • Text, images and page structure captured as it draws, not guessed afterwards
    • Groundwork for editing anything visible on a page
  22. v0.7.0

    · Engine 0.4

    A PDF parser of our own

    We started reading the PDF format directly: the object tree, the cross-reference tables and the compressed drawing instructions inside each page. Unglamorous, and everything since depends on it.

    • Read a PDF’s object tree and cross-reference tables
    • Decode compressed streams and page drawing instructions
    • Handle damaged files that other readers give up on
  23. v0.6.0

    · Engine 0.2

    Compression that actually compresses

    Compression stopped being a token gesture. The engine now finds every image in a document, resizes and re-encodes it, and repacks the file structure, with four levels so you can choose between size and quality.

    • Images are decoded, resized and re-encoded rather than passed through
    • Unused data and bloated metadata stripped out
    • Four compression levels, from light to aggressive
    • Transparency and image masks are preserved
  24. v0.5.0

    · Engine 0.1

    We start writing our own engine

    The decision that shaped everything after it. Rather than assembling the site from third-party converters, we began building a document engine of our own, starting with the pipeline that every tool now runs through.

    • A processing pipeline that every tool plugs into
    • Compression rewritten as the first piece of the new engine
    • An internal workbench for testing the engine as it grew
  25. v0.4.0

    Steadier ground

    A consolidation release. The early tools were reliable enough to use but fragile to run, so this one went into making them load properly, fail gracefully and stop depending on a server for work the browser could do.

    • Tools load reliably instead of breaking on first paint
    • Conversions moved fully into the browser, removing an upload step
    • The unused upload endpoint was deleted
    • Released under an open-source licence
  26. v0.3.0

    Images in, text out

    Images joined the suite in both directions: turn a folder of photos or scans into a single PDF, or pull the text out of an image and keep it.

    • Build a PDF from images, with page size and ordering under your control
    • Extract text from an image
    • A clearer home page for finding the right tool
  27. v0.2.0

    PDF to Word, and a dark mode

    Conversion started working both ways, and the interface got its first real design pass, including a dark theme that remembers your choice.

    • Convert a PDF to an editable Word document
    • A dark theme that persists between visits
    • A rebuilt header and navigation
  28. v0.1.0

    The beta: three tools and an idea

    The first public build. Three tools, one principle: your documents should be handled in your browser rather than uploaded to someone else’s server. That principle has not moved since.

    • A first PDF editor
    • PDF compression
    • Word to PDF conversion
    • Files processed locally, not uploaded

Still shipping

Every tool on this site runs in your browser, and every release above was built on the same principle. The SDK packages are published on npm, so the dates and versions here can be checked against the registry.