What's new in Novus Convert
Every update to the converter, newest first — new formats, features, fixes, and improvements.
USDZ, COLLADA, X3D and point clouds join the 3D matrix
Eight geometry formats gained verified fixtures, which publishes 58 routes. USDZ is the one that mattered: it is mostly a destination, so every route into it worked and none of them could be listed.
- AddedUSDZ is a real destination now. Fifteen mesh and CAD formats publish a route into it — STL to USDZ, OBJ to USDZ, GLB to USDZ, STEP to USDZ and the rest — and a .usdz someone sends you opens back out to STL, OBJ, 3MF, GLB, glTF and PLY. Those write routes already worked; none of them could be published, because a route is only listed once both ends have a verified fixture and USDZ had none.
- AddedCOLLADA, VRML, X3D and OFF meshes are verified end to end, each converting to STL, OBJ, 3MF, GLB, glTF, PLY and USDZ — for example DAE to GLB and X3D to STL. Scenes are flattened to triangles in the page, and no external reference is ever fetched: only what you upload is read.
- AddedA point cloud is not a mesh, and is no longer treated as one. PCD and XYZ carry positions and no faces at all, so they convert to the three formats that can hold points — PCD to PLY, PCD to GLB and glTF, and the same three from XYZ. Molfile chemistry reaches the same place through MOL to XYZ.
- FixedPoint-cloud downloads were being refused by the converter's own output check. Every finished file is re-opened before it is handed over, and PLY, GLB and glTF output was re-opened with the mesh readers — which insist on faces, correctly, because a mesh without them is broken. A point cloud has none, so all six routes produced a correct file and were then rejected with “PLY must declare vertex and face elements”. Output is now re-read by point readers written against the PLY and glTF specifications: the check is no weaker, it just looks for the geometry that was actually written.
- ImprovedWith today's four families verified, 2,330 of the 2,341 working routes are listed and 210 of the 244 browser inputs carry a bundled fixture. Eleven routes still carry noindex: Parquet's three table targets, the Bzip2 and XZ TAR shorthands, and a TrueType collection unpack, all waiting on a deterministic fixture — plus notebook-to-Python, whose target is a reference-only format with no page of its own.
Twelve binary data and scientific formats, decoded against each other
Arrow, MessagePack, CBOR, BSON, SQLite, Avro and six more open in the browser across 58 routes. Nine of them ship the same five-row table as their fixture, so the decoders are checked against each other rather than only against themselves.
- AddedBinary interchange formats convert to JSON, CSV and XLSX: Apache Arrow, Feather, MessagePack, CBOR, BSON, Avro and dBASE — for example MessagePack to JSON and Arrow to XLSX. It works in the other direction too: JSON and CSV can be written back out as MessagePack, CBOR, BSON, Arrow or Feather.
- AddedSQLite databases come apart into ordinary files. SQLite to XLSX writes one worksheet per table and SQLite to ZIP writes one CSV per table. The database is opened read-only from an in-memory copy, so the file you uploaded is never written to and nothing is left behind afterwards.
- AddedScience and machine-learning files join them. NumPy arrays become CSV or a workbook; safetensors are read for their tensor names, shapes and dtypes without loading a model, and safetensors to ZIP writes every tensor out as a separate .npy beside a manifest; NetCDF datasets export one worksheet per variable; and FITS astronomy files export their tables or render a two-dimensional image as a grayscale PNG.
- ImprovedNine of these decoders are tested against one another rather than against themselves. MessagePack, CBOR, BSON, Arrow, Feather, SQLite, Avro, dBASE and NumPy all carry the same five employee records — the same names, the same integers, the same floats — so MessagePack to JSON and BSON to JSON have to agree, and a defect in any one decoder shows up as a disagreement instead of passing quietly. A decoder checked only against its own writer will confirm whatever that writer assumed.
AsciiDoc, LaTeX, notebooks, citations and graph files convert
Twelve authoring, citation, healthcare, forms and graph formats gained verified fixtures across 48 listed routes. LaTeX documents also stop arriving without their title and author.
- AddedPlain-text authoring formats convert to HTML, Markdown and text: AsciiDoc, reStructuredText and LaTeX — for example LaTeX to Markdown and AsciiDoc to HTML. Includes, raw directives and shell escapes are all disabled, so nothing in the file can reach outside itself.
- AddedJupyter notebooks export their cells to Markdown, HTML, plain text, Python or PDF without running a line of code, and without trusting the HTML that was stored in the outputs.
- AddedReference and record formats round-trip. BibTeX and RIS convert to each other and to JSON or CSV, HL7 v2 messages break out into JSON or a table, .env files become JSON, TOML or INI, and PDF form data moves between FDF and XFDF in both directions. GraphML and GEXF convert to each other, to Graphviz DOT, to JSON, and to a drawn SVG preview when you just want to see the shape of the graph.
- FixedEvery LaTeX document lost its title and author. Conversion reads the body between \begin{document} and \end{document}, but \title and \author sit above it in the preamble, and the \maketitle that would have rendered them was being erased by the general macro-stripping pass. The same paper converted through AsciiDoc or reStructuredText kept its heading; through LaTeX it came out headless. Both now survive — and a document that never calls \maketitle is still left alone, because not printing the title is the author's own choice.
Zstandard and LZ4 archives open at last, with four more containers
Every .zst, .zstd and .lz4 conversion had been failing for everyone; all nine of those routes now decode in the page. Seven archive containers in total gained verified fixtures across 21 routes.
- FixedZstandard and LZ4 archives never worked at all. The bundled libarchive build links neither codec, so it fell back to invoking an external command-line program — something a browser cannot do — and all nine routes across .zst, .zstd and .lz4 failed for every user. Zstandard now decodes through the decoder this site already ships for Parquet, and LZ4 frames are read against the frame specification, so ZST to ZIP and LZ4 to TAR run entirely in the page and cost no extra download.
- AddedFour more containers unpack to ZIP, TAR and TAR.GZ: .tgz, CPIO, Unix ar and WARC web crawls — so CPIO to ZIP or WARC to TAR turns something your operating system will not open into something it will, without installing a tool for a file you will read once.
Twenty-three text, feed, map and data formats leave noindex
Configuration, feed, calendar, contact, geospatial, chemistry and graph formats gained verified fixtures covering all 65 of their routes. Indexable routes are now 2,145 of 2,341.
- AddedConfiguration and record formats are verified end to end: TOML, INI, JSON Lines, NDJSON and SQL dumps.
- AddedFeeds, calendars and contacts convert between each other: RSS, Atom, JSON Feed, OPML, iCalendar, vCard, EML and MBOX.
- AddedMapping and science formats join them: GeoJSON, GPX, KML, TopoJSON, WKT, TCX, Molfile and Graphviz DOT. Related families share fixture content — the same recorded track, the same two feed entries — so a conversion between any pair can be checked for content loss rather than merely for not failing.
- ImprovedEvery one of these formats now has a hand-written profile rather than a generated one. A format with published, indexable pages earning real writing is a rule the codebase stated in a comment and did not enforce; it is now a test, so a future format cannot become indexable while its page still serves boilerplate.
EDI files now open under the name they actually arrive with
The .edi extension is registered, reads both ASC X12 and UN/EDIFACT, and picks between them by inspecting the file rather than trusting its name. Ten localization formats and the Netpbm trio also became indexable, taking noindex routes down by half.
- AddedEDI interchanges convert under .edi, the extension they are actually named in the wild — previously only .x12 was recognised, which almost no real file uses, so working routes could not be reached by a genuine interchange.
- AddedUN/EDIFACT interchanges are read as well as ASC X12. Because .edi carries both standards, the parser is chosen from the first three bytes — ISA for X12, UNA or UNB for EDIFACT — rather than from the filename, which genuinely cannot tell them apart. EDIFACT's release character is honoured, so a delimiter escaped inside a value survives instead of splitting the element in two.
- AddedTen localization formats and the Netpbm trio are now fixture-verified and indexable: PO, XLIFF, RESX, ARB and the rest, plus PBM, PGM, PPM and CUR.
- FixedreStructuredText files saved on Windows were rejected as not matching their own extension. The check used a pattern that cannot match a carriage return, so every CRLF .rst file — most of them — failed with a message blaming the file.
Software packages, USD scenes and bitmap fonts now convert
Nine package containers, USD ASCII scenes and Adobe BDF bitmap fonts join the catalogue with 36 fixture-verified routes. Packages are only ever unpacked and repackaged — nothing inside one is installed or executed.
- AddedSoftware packages unpack in the browser. DEB and RPM open through their real containers — a Unix ar archive and an RPM header over a compressed cpio payload — while APK, IPA, WHL, NUPKG, VSIX, PK3 and XPI are read as the ZIPs they are. Each one converts to ZIP, TAR and TAR.GZ — for example DEB to ZIP and RPM to TAR. Members are listed and copied as bytes: no install script, scriptlet, or extension code is ever read as code or run, and nothing is installed.
- AddedUSD ASCII scenes convert to mesh formats. A .usda layer is parsed locally into triangle geometry and exported as STL, OBJ, 3MF, GLB, glTF or PLY. External references are never fetched — only what you upload is read.
- AddedBDF bitmap fonts are no longer guide-only. Each glyph's pixels are traced into pixel-aligned outlines and written as TrueType or WOFF2, keeping the declared advance widths and font-box metrics, so a terminal or retro display font can finally be used on the web.
- AddedComic archives extract to a plain ZIP. CBZ to ZIP writes the pages out in validated natural order under an extension every operating system opens without a reader app.
- ImprovedFont downloads are checked structurally rather than by file size. The end-to-end suite now reads the sfnt table directory and the WOFF/WOFF2 header fields, which catches a truncated font at any scale instead of only a large one.
Office templates, macro-enabled files and Apple Numbers now convert
Eleven spreadsheet, document and presentation variants join the catalogue with 79 fixture-verified routes. Macro payloads are stripped before anything is parsed, and no macro is ever executed.
- AddedMacro-enabled Office files convert without their macros. XLSM, DOCM and PPTM are read for their cells, text and slides only — for example XLSM to XLSX and DOCM to PDF. The VBA project is deleted from the unpacked package before a single part is parsed, so it is never interpreted and never runs.
- AddedOffice templates convert too: XLTX, XLTM, DOTX, DOTM, POTX and POTM — so a starting point you were sent can become a CSV or a plain document without opening Office.
- AddedExcel binary workbooks and Apple Numbers spreadsheets are now decoded in the page rather than documented as guides. XLSB to CSV and Numbers to XLSX work with no Excel, no Mac, and no upload — Numbers in particular has had no route off an Apple device that did not involve Apple software.
- ImprovedSpreadsheet reading got stricter across the board. Only true worksheets are read: chart sheets, dialog sheets and Excel 4.0 macro sheets are ignored rather than mined for text, closing a path by which macro-sheet content could have reached a converted file.
OpenEXR, Radiance HDR and JPEG 2000 images convert in the browser
Four high-dynamic-range and wavelet still-image formats join the catalogue with 56 fixture-verified routes, and neither engine adds a byte to the download.
- AddedOpenEXR and Radiance HDR images now convert to every raster target — for example EXR to PNG and HDR to JPG. Both are parsed in the page by three.js, so the routes need no WebAssembly download at all.
- AddedJPEG 2000 arrives in both flavours: the boxed JP2 container and the bare J2K codestream. No browser has decoded JPEG 2000 for years; these run on the same self-hosted FFmpeg core the site already loads for video, so the routes cost no extra engine.
- ImprovedHigh-dynamic-range pixels are rendered to 8-bit by one documented rule: clamp to the display range, then apply the sRGB transfer function. Nothing above 1.0 survives, no exposure is guessed, and the same file always produces the same result.
AIFF, AU, ALAC, AC-3 and WMA are now conversion targets
Five audio formats the converter could only read can now be written as well, which adds 150 routes and completes the WAV matrix.
- AddedEvery audio and video input can now be converted to AIFF, AU, ALAC, AC-3, and WMA — for example WAV to AIFF, FLAC to ALAC, and MP4 to AC3.
- AddedThe WAV matrix is complete in both directions: WAV converts to all twelve sibling audio formats, and every audio and video input converts to WAV.
- AddedSame-format compression now also covers ALAC, AC-3, and WMA, which gained real encoders rather than decode-only support.
- ImprovedTen audio formats moved from fixture-pending to verified. MP3, AAC, FLAC, OGG, Opus, M4A, M4R, ALAC, AC-3, and WMA each have a real clip in the browser test matrix now, so their conversions are exercised end to end in Chromium.
- ImprovedAMR, DTS, SMAF, and RealMedia keep their previous target list on purpose. The bundled media engine can read them but has no encoder for them, so no test clip can be produced and no route would be verifiable.
Fourteen more video containers, in both directions
AVI, DivX, FLV, 3GP, M4V, TS, MTS, M2TS, WMV, MPG, MPEG, VOB, OGV, and MXF were already accepted as inputs. They are now conversion targets too, which adds 270 routes.
- AddedEvery video input can now be written to fourteen more containers, not just MP4, MOV, MKV, and WebM. That covers the Windows Media, MPEG program-stream, DVD, transport-stream, Ogg Theora, and broadcast MXF families — for example MP4 to WMV, MP4 to AVI, and MKV to MPG.
- AddedAnimated GIF and APNG can be turned into any of those containers as well, not only MP4 and WebM.
- AddedSame-format compression now also covers WMV, MPG, MPEG, VOB, OGV, and MXF.
- ImprovedFifteen video formats moved from fixture-pending to verified. Each one now has a real clip in the browser test matrix, so their conversions are exercised end to end in Chromium rather than only unit-tested.
Site search, a mega menu, and a much lighter homepage
You can now search the whole site, browse the full format taxonomy from a proper menu, and the homepage loads a fraction of what it used to.
- AddedSite-wide search across every format, conversion route, blog post, tutorial section, and documentation page. The index is built at deploy time and served as a static file, so searching costs no server round trip.
- AddedA desktop mega menu covering all nine format categories, popular routes, tools, and company pages. The mobile drawer exposes the same destinations.
- ImprovedThe homepage no longer renders the entire format catalogue. It now leads with popular conversions, recent formats, and category summaries; the complete catalogue still lives on the Formats page.
- FixedThe install prompt no longer competes with the cookie banner. It waits until you have finished a conversion or returned for a second visit.
- AddedAbout, Features, Status, Press kit, and Tool map pages, plus a repository license.
Installable progressive web app
Novus Convert can be installed as a standalone app. A service worker caches the shell and previously loaded engines; conversion files still never leave your device.
- AddedProgressive web app support: web manifest install icons, production service worker, offline fallback page, and a dismissible install prompt (including an iOS Add to Home Screen hint).
- ImprovedAfter you use Convert or Compress online once, those pages and their engines can keep working from cache when the network drops. Engines are not downloaded on first install — only when you need them.
Advertising cutover to Google AdSense
Adsterra and Infolinks are removed. The site now loads consent-gated Google AdSense only — no sponsor download tabs — while placement shells wait for approved display units.
- ImprovedAdvertising now uses Google AdSense alone. The loader mounts from the root layout and stays off until advertising storage is allowed; EEA, UK, and Switzerland visitors remain blocked until Accept.
- FixedRemoved Adsterra banners, native units, Social Bar, Smartlink download promotions, and Infolinks. Privacy and cookies pages name AdSense as the advertising partner.
Two new guides: images to PDF, and convert versus same-format compress
Fresh blog articles walk through packaging PNG, JPG, WebP, and SVG into PDFs locally, and clarify when to use Convert versus Compress so the extension stays put when you only need a smaller file.
- AddedA guide on turning images and SVG into PDF — including page sizing, SVG rasterization limits, and private in-browser packaging.
- AddedA comparison of convert versus same-format compress so quality sliders, locked extensions, and “not smaller” warnings match how the tools actually behave.
Everyone gets asked about cookies, not just the regions that require it
The consent banner now appears for every visitor who has not answered it. Where prior consent is legally required nothing loads until you accept; everywhere else advertising runs by default and the banner is how you turn it off.
- ImprovedThe cookie banner is shown in every region instead of only the European Economic Area, the United Kingdom, and Switzerland. It states what is actually running when it appears, so the wording differs by region rather than claiming ads are waiting when they are not. Reaching the controls no longer depends on finding Manage cookies in the footer.
- FixedRejecting non-essential storage now removes advertising that had already loaded, instead of leaving those scripts running until the next page. The page reloads to clear them — unless files are still in the converter queue, where a reload would discard results that exist only in browser memory.
- AddedAn Adsterra Social Bar unit was added sitewide. Like every other ad script here it stays off the page until advertising storage is allowed.
Long PDFs convert to images, and every export package is verified
A PDF too long to render as one tall image now comes back as a ZIP of full-resolution page images instead of an error, and EPUB, DOCX, and CBZ downloads are opened and checked before they reach you.
- FixedLong documents no longer refuse to render: PDF to PNG and PDF to JPG stack the pages into one image while that fits a browser canvas, and past that point deliver every page at full resolution in a ZIP. A fifty-page report used to stop at “exceeds browser canvas limits”.
- ImprovedEPUB, DOCX, and CBZ exports are now opened and inspected before the download is offered — the media type, the declared package file, every manifest entry, the reading order, and the navigation document all have to be present. A package that would open as “corrupt” fails the conversion instead.
- FixedComic conversions to CBZ to EPUB now include the navigation document EPUB 3 requires, which strict readers such as Apple Books refused the book without.
Image tracing to SVG, plus 36 new document and 3D routes
Raster images can now be traced into real SVG vectors in the browser, and thirty-six conversion routes open up across PDF, ebook, office, spreadsheet, and CAD families — 1073 routes in total.
- AddedRaster images trace to true vector output: JPG to SVG, PNG to SVG, and thirteen more raster sources. A local tracer groups the pixels into flat colour regions and fits outline paths around them, so logos and line art scale to any size — useful for print, vinyl and laser cutting, and as the vector a machine-embroidery digitizer starts from. The quality slider controls how many colours and how much detail survive.
- AddedCAD models reach the modern mesh formats directly: STEP to GLB, plus glTF and PLY from STEP, STP, IGES, and IGS.
- AddedDocuments and ebooks gained publishing targets — PDF to EPUB (and to Markdown and DOCX), EPUB to PDF and DOCX, the same for MOBI, AZW, AZW3, PDB, and FB2, EPUB output from Word, ODT, PowerPoint, ODP, and RTF, XLS to PDF, and Markdown tables from CSV and TSV.
- ImprovedThe PDF, DOCX, and EPUB writers now come from one shared module instead of three near-copies, so every text-extracting engine offers the same publishing targets.
New caption formats, twelve guides, sharing, and a mobile + SEO polish
SBV and LRC caption tools, a dozen new how-to guides, one-tap sharing on every page, a mobile fix pass with an animated hero, and a broad SEO, metadata, and social-image refresh.
- AddedSBV (YouTube) and LRC (synced lyrics) join the caption tools, converting locally to and from SRT and VTT — 125 browser-ready inputs across 1022 routes now.
- AddedTwelve new guides on the blog covering image, video, audio, camera RAW, document, spreadsheet, 3D model, ebook, and archive conversions.
- AddedA consistent Share row — native share, X, Facebook, LinkedIn, Pinterest, Reddit, WhatsApp, email, and copy-link — on articles, converters, and format pages, using plain links with no third-party trackers.
- AddedA gently animated hero and subtle motion cues across the site, fully disabled when you prefer reduced motion.
- ImprovedEvery page now ships a unique, correctly sized social preview image; fixed overlapping text on shared cards and gave the formats and conversions directories richer, unique content with on-page FAQs.
- FixedA mobile pass fixed a horizontal-scroll issue caused by a banner slot on narrow screens and enlarged small tap targets.
- ImprovedSecurity and privacy pass: a broader Permissions-Policy, a security.txt disclosure contact, removal of a no-op analytics setting, and clearer advertising and analytics wording in the policies.
Format expansion across documents, images, media, and mesh
123 browser-ready inputs and 1008 local routes: image/SVG→PDF, spreadsheet interchange, text→DOCX/PDF/EPUB, AVIF encode, GIF/APNG→video, SRT↔VTT, office→PDF extracts, and GLB/glTF/PLY mesh conversion.
- AddedImage and SVG routes now export PDF pages, and still-image pipelines can encode AVIF locally with @jsquash/avif.
- AddedCSV/JSON/TSV write XLSX or ODS via SheetJS; XLSX and ODS convert to each other while keeping multi-sheet extraction.
- AddedTXT, Markdown, and HTML convert to DOCX, PDF, and EPUB; office documents and workbooks can export text/table extracts as PDF with honest layout limits.
- AddedGIF and APNG animations transcode to MP4 or WebM through the local FFmpeg engine instead of first-frame-only still paths.
- AddedSRT↔VTT subtitle conversion, plus GLB/glTF/PLY mesh interchange with STL, OBJ, and 3MF.
Advertising and cookie consent
Introduced clearly labeled advertising supported by a privacy-first consent banner with Google Consent Mode v2 defaults.
- AddedAdsterra and Infolinks advertising now support the free tools, with a consent banner and cookie controls in the footer.
- AddedGoogle Consent Mode v2 starts every storage type denied and grants it only after you accept, as described in the privacy policy.
- ImprovedAnalytics and advertising scripts load only after consent, so rejecting non-essential storage keeps them off the page entirely.
Blog, tutorial, and changelog
A big content release: three new sections to help you get more out of Novus Convert, plus reliability fixes across the converter.
- AddedLaunched the Novus Convert blog with five in-depth articles, instant category filtering, search, and pagination.
- AddedAdded a step-by-step tutorial covering every workflow — conversion, batch queues, compression, the format directory, downloads, mobile, privacy, and troubleshooting.
- AddedPublished this changelog so you can follow every update in one place.
- FixedFixed the browser conversion engines end-to-end — resolved a security-policy rule that blocked WebAssembly, self-hosted the FFmpeg worker with a load timeout, corrected WebM and Opus encoding, and fixed GIF and SVG output.
- ImprovedAdded a light and dark theme toggle, with light as the default, and rewrote the on-page content across every route for clarity.
- ImprovedConfirmed automatic production deployments so every update ships to the live site as soon as it lands.
Initial launch: broad browser conversion
The first public release, with a wide range of formats that convert entirely in your browser.
- AddedShipped browser-based conversion for images, camera RAW (eleven vendors), JPEG XL, video and audio, documents, ebooks, fonts, archives, Windows metafiles, DXF, and 3D CAD models.
- AddedBuilt the working conversions directory and an honest format directory that clearly labels which formats have a real converter and which are reference-only.
- AddedAdded local media compression for images, video, and audio with measured savings.
- ImprovedBrought full mobile parity to navigation and the conversion queue, and reduced edge request volume for faster loads.
- AddedAdded search-engine verification, privacy-respecting analytics, and branded social sharing images.