Support, without the guesswork.

Every direction is separate. Check what a tool can read, write and preserve.

Not every feature in a format can survive conversion. A listed input does not imply all variants, encrypted files or embedded resources are supported. Tool pages describe the implemented direction and its limits.

195 tools

PDF

Pages, documents and local rendering.

PDF to PNG

PDF → PNG · mupdf

Render selected PDF pages as separate PNG images.

  • Raster output has no selectable text. Maximum 40 megapixels per rendered page.
Open PDF to PNG →
PDF to JPEG

PDF → JPG · mupdf

Render selected PDF pages as separate JPEG images.

  • Raster output has no selectable text.
Open PDF to JPEG →
Extract PDF text

PDF → TXT · mupdf

Extract embedded text in page order.

  • Scans need OCR; this tool does not recognize text in images. Reading order follows the PDF.
Open Extract PDF text →
Merge PDFs

PDF → PDF · mupdf

Join PDF files in queue order.

  • PDF page content is copied; document outlines, signatures and document-level forms are not merged.
Open Merge PDFs →
Extract / reorder PDF pages

PDF → PDF · mupdf

Export selected pages in the order entered.

  • Document signatures become invalid after editing.
Open Extract / reorder PDF pages →
Split PDF

PDF → PDF · mupdf

Export each selected page as a separate PDF.

    Open Split PDF →
    Rotate PDF pages

    PDF → PDF · mupdf

    Rotate selected pages in 90-degree increments.

      Open Rotate PDF pages →
      Optimize PDF structure

      PDF → PDF · mupdf

      Rewrite PDF streams and remove unused objects.

      • Lossless structural optimization; image resolution is unchanged and files may grow.
      Open Optimize PDF structure →
      Password protect PDF

      PDF → PDF · mupdf

      Save a PDF with AES-256 encryption.

      • Use different strong opening and owner passwords. Passwords containing commas or equals signs are unsupported.
      Open Password protect PDF →
      Remove PDF password

      PDF → PDF · mupdf

      Remove encryption after authenticating with a known password.

        Open Remove PDF password →
        Permanently redact a PDF area

        PDF → PDF · mupdf

        Remove text, image pixels and touched vector art in a selected rectangle.

        • Coordinates start at the top-left of the displayed page, in PDF points (72 per inch). Redaction is irreversible in the exported PDF. Check the output before sharing.
        Open Permanently redact a PDF area →
        Replace PDF text

        PDF → PDF · mupdf

        Remove every matching text occurrence on selected pages and insert replacement text.

        • Original text is redacted before replacement. Layout is not reflowed; replacement must fit. Standard Latin fonts only.
        Open Replace PDF text →
        Insert PDF text / typed signature

        PDF → PDF · mupdf

        Add text at a chosen position and bake it into the page.

        • Typed signature is a visual mark, not a cryptographic signature. Helvetica supports standard Latin text.
        Open Insert PDF text / typed signature →
        Insert PDF image / drawn signature

        PDF, PNG, JPG, JPEG → PDF · mupdf

        Place a raster image on a PDF page.

        • Queue exactly one PDF and one PNG/JPEG image. Image is fitted into the selected rectangle. Signatures are visual marks.
        Open Insert PDF image / drawn signature →
        Replace PDF image area

        PDF, PNG, JPG, JPEG → PDF · mupdf

        Remove images intersecting a selected rectangle, then insert a replacement.

        • Queue exactly one PDF and one PNG/JPEG image. Any image touching the rectangle is removed in full before replacement. Text and vector art remain.
        Open Replace PDF image area →
        Annotate PDF

        PDF → PDF · mupdf

        Add a comment, highlight or rectangle annotation.

          Open Annotate PDF →
          Fill PDF form fields

          PDF → PDF · mupdf

          Set text and choice fields by field name from a JSON object.

          • Supports existing text and choice fields. Checkbox, signature and XFA forms are excluded. Unknown field names are errors.
          Open Fill PDF form fields →
          Images to PDF

          PNG, JPG, JPEG, WEBP, TIF, TIFF, BMP, GIF → PDF · mupdf

          Create one PDF page per input image.

          • Each page uses the first image frame. Images retain their pixel dimensions as PDF points.
          Open Images to PDF →
          OCR to text

          PDF, PNG, JPG, JPEG, BMP, TIF, TIFF, WEBP → TXT · tesseract

          Recognize English text in scanned pages or raster images.

          • English model only. Recognition is approximate; inspect the text before relying on it.
          • PDF pages are rendered at 144 DPI. Maximum 20 pages per file. Images use the first frame.
          Open OCR to text →
          Create searchable PDF

          PDF, PNG, JPG, JPEG, BMP, TIF, TIFF, WEBP → PDF · tesseract

          Recognize English text and export a PDF with an invisible searchable text layer.

          • English model only. Recognition is approximate; inspect the text before relying on it.
          • Pages are rasterized; original vectors, forms, links and annotations become pixels. Maximum 20 pages per file.
          Open Create searchable PDF →

          Images

          Raster images and image processing.

          Resize image

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Resize an image to fit within a width and height, preserving aspect ratio; download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Resize image →
          Crop image

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Crop an image to a rectangle specified in pixels and download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Crop image →
          Rotate image

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Rotate an image clockwise by an angle in degrees and download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Rotate image →
          Flip or mirror image

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Mirror an image horizontally or flip it vertically, then download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Flip or mirror image →
          Grayscale image

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Convert an image to grayscale and download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Grayscale image →
          Remove image metadata

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Remove metadata and color profiles from an image and download a PNG.

          • Only the first frame is processed. Output is PNG; editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Remove image metadata →
          Compress image to JPEG

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → JPG · imagemagick

          Create a JPEG with adjustable lossy quality. The output may be larger than the original.

          • Only the first frame is processed. Output is lossy JPEG; transparency and editable layers are not preserved.
          • Maximum 40 megapixels per frame, including after resizing and rotation. Metadata and color profiles may change.
          Open Compress image to JPEG →
          Image to PNG

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PNG · imagemagick

          Convert raster images to PNG; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to PNG →
          Image to JPEG

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → JPG · imagemagick

          Convert raster images to JPEG; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to JPEG →
          Image to WEBP

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → WEBP · imagemagick

          Convert raster images to WEBP; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to WEBP →
          Image to GIF

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → GIF · imagemagick

          Convert raster images to GIF; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to GIF →
          Image to TIFF

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → TIFF · imagemagick

          Convert raster images to TIFF; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to TIFF →
          Image to BMP

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → BMP · imagemagick

          Convert raster images to BMP; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to BMP →
          Image to AVIF

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → AVIF · imagemagick

          Convert raster images to AVIF; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to AVIF →
          Image to JXL

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → JXL · imagemagick

          Convert raster images to JXL; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to JXL →
          Image to JP2

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → JP2 · imagemagick

          Convert raster images to JP2; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to JP2 →
          Image to QOI

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → QOI · imagemagick

          Convert raster images to QOI; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to QOI →
          Image to PSD

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PSD · imagemagick

          Convert raster images to PSD; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to PSD →
          Image to EXR

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → EXR · imagemagick

          Convert raster images to EXR; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to EXR →
          Image to HDR

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → HDR · imagemagick

          Convert raster images to HDR; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to HDR →
          Image to PPM

          PNG, JPG, WEBP, GIF, TIFF, BMP, AVIF, JXL, JP2, QOI, PSD, EXR, HDR, PPM, JPEG, TIF → PPM · imagemagick

          Convert raster images to PPM; resize, crop and rotate locally.

          • Only verified raster formats are advertised. Layered files are rendered; editable layers are not preserved.
          • Metadata and color may change during conversion. Animation is preserved only with All frames and GIF, WebP or TIFF output. Maximum 500 frames and 40 megapixels per frame.
          Open Image to PPM →

          Video

          Video conversion, trimming and frames.

          Extract video image sequence

          MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → PNG · ffmpeg

          Extract video frames as a PNG image sequence with adjustable frame rate, time range and image width.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Extract video image sequence →
          Images to MP4 slideshow

          PNG, JPG, JPEG, WEBP, BMP → MP4 · ffmpeg

          Turn an ordered image sequence into an MP4 slideshow with adjustable frame timing.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Images to MP4 slideshow →
          Video to MP4

          MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → MP4 · ffmpeg

          Convert video to MP4, with trimming and resizing controls.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Video to MP4 →
          Video to WebM

          MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → WEBM · ffmpeg

          Convert video to WEBM, with trimming and resizing controls.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Video to WebM →
          Video to GIF

          MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → GIF · ffmpeg

          Convert video to GIF, with trimming and resizing controls.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Video to GIF →
          Extract video frame

          MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → PNG · ffmpeg

          Save a still image from a video at a selected timestamp as a PNG.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Extract video frame →

          Audio

          Audio conversion and extraction.

          Audio to MP3

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → MP3 · ffmpeg

          Convert audio or extract the first video audio track as MP3.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to MP3 →
          Audio to WAV

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → WAV · ffmpeg

          Convert audio or extract the first video audio track as WAV.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to WAV →
          Audio to FLAC

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → FLAC · ffmpeg

          Convert audio or extract the first video audio track as FLAC.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to FLAC →
          Audio to Ogg Vorbis

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → OGG · ffmpeg

          Convert audio or extract the first video audio track as OGG.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to Ogg Vorbis →
          Audio to Opus

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → OPUS · ffmpeg

          Convert audio or extract the first video audio track as OPUS.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to Opus →
          Audio to M4A

          MP3, WAV, FLAC, OGG, OPUS, M4A, AAC, AIFF, WMA, MP4, MOV, MKV, WEBM, AVI, M4V, MPEG, MPG, OGV, TS → M4A · ffmpeg

          Convert audio or extract the first video audio track as M4A.

          • Single-threaded FFmpeg. Large files can exceed browser memory; total job input is limited to 128 MiB.
          • DRM is unsupported. Decoder support depends on the source codec; conversion failure is reported. First video/audio stream only; subtitles, chapters and attachments are not copied.
          Open Audio to M4A →

          Documents

          Word files and document text.

          Text to DOCX

          TXT, MD → DOCX · OOXML / fflate

          Create a Word document from plain text paragraphs.

          • Plain text paragraphs only; Markdown syntax remains literal.
          Open Text to DOCX →
          DOCX to text

          DOCX → TXT · OOXML / fflate

          Extract document body text and table cells from Word files.

          • Headers, footers, images, comments, tracked-change interpretation and formatting are not preserved. Encrypted documents are unsupported.
          Open DOCX to text →
          OCR to DOCX (best effort)

          PDF, PNG, JPG, JPEG, BMP, TIF, TIFF, WEBP → DOCX · tesseract

          Recognize English text and create a plain-text Office document.

          • English model only. Recognition is approximate; inspect the text before relying on it.
          • PDF pages are rendered at 144 DPI. Maximum 20 pages per file. Images use the first frame.
          • Text-only reconstruction: recognized lines become paragraphs. Original columns, fonts, page layout, tables and images are omitted.
          Open OCR to DOCX (best effort) →
          Word document to PDF

          DOC, DOCX, ODT, RTF, TXT, HTML, HTM → PDF · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Word document to PDF →
          Word document to DOCX

          DOC, DOCX, ODT, RTF, TXT → DOCX · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Word document to DOCX →
          Word document to ODT

          DOC, DOCX, ODT, RTF, TXT → ODT · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Word document to ODT →
          Word document to RTF

          DOC, DOCX, ODT, RTF, TXT → RTF · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Word document to RTF →
          Word document to TXT

          DOC, DOCX, ODT, RTF, TXT → TXT · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          • Plain text discards layout, images and formatting.
          Open Word document to TXT →

          Spreadsheets

          Worksheet and tabular exports.

          CSV to XLSX

          CSV → XLSX · OOXML / fflate

          Create a single-sheet Excel workbook from delimited text.

          • All cells are written as text, preserving leading zeros and preventing formula injection. No formatting or formula calculation. 100,000 rows / 2 million cells maximum.
          Open CSV to XLSX →
          TSV to XLSX

          TSV → XLSX · OOXML / fflate

          Create a single-sheet Excel workbook from delimited text.

          • All cells are written as text, preserving leading zeros and preventing formula injection. No formatting or formula calculation. 100,000 rows / 2 million cells maximum.
          Open TSV to XLSX →
          XLSX to CSV

          XLSX → CSV · OOXML / fflate

          Export an explicitly selected worksheet from an Excel workbook.

          • Enter the exact worksheet name; a missing selection lists available names. Formulas use cached values and fail if none exist. Dates remain Excel serial numbers. Formatting, charts and macros are omitted. JSON is an array of rows. 100,000 rows / 2 million cells maximum.
          Open XLSX to CSV →
          XLSX to TSV

          XLSX → TSV · OOXML / fflate

          Export an explicitly selected worksheet from an Excel workbook.

          • Enter the exact worksheet name; a missing selection lists available names. Formulas use cached values and fail if none exist. Dates remain Excel serial numbers. Formatting, charts and macros are omitted. JSON is an array of rows. 100,000 rows / 2 million cells maximum.
          Open XLSX to TSV →
          XLSX to JSON

          XLSX → JSON · OOXML / fflate

          Export an explicitly selected worksheet from an Excel workbook.

          • Enter the exact worksheet name; a missing selection lists available names. Formulas use cached values and fail if none exist. Dates remain Excel serial numbers. Formatting, charts and macros are omitted. JSON is an array of rows. 100,000 rows / 2 million cells maximum.
          Open XLSX to JSON →
          OCR to XLSX (best effort)

          PDF, PNG, JPG, JPEG, BMP, TIF, TIFF, WEBP → XLSX · tesseract

          Recognize English text and infer rows and columns from explicit separators.

          • English model only. Recognition is approximate; inspect the text before relying on it.
          • PDF pages are rendered at 144 DPI. Maximum 20 pages per file. Images use the first frame.
          • Heuristic rows and columns only. No table detection, formulas, types or formatting. Review every cell; all values are stored as text.
          Open OCR to XLSX (best effort) →
          Spreadsheet to PDF

          XLS, XLSX, ODS, CSV → PDF · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Spreadsheet to PDF →
          Spreadsheet to XLSX

          XLS, XLSX, ODS, CSV → XLSX · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Spreadsheet to XLSX →
          Spreadsheet to ODS

          XLS, XLSX, ODS, CSV → ODS · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Spreadsheet to ODS →

          Presentations

          Presentation slides and extraction.

          Text to PPTX

          TXT, MD → PPTX · PptxGenJS

          Create readable presentation slides from plain text.

          • A blank line separates slides. Long slides are split after 12 lines. Plain text only; Markdown remains literal.
          Open Text to PPTX →
          PPTX to text

          PPTX → TXT · OOXML / fflate

          Extract slide text in presentation order.

          • Text only, in document shape order. Slide layouts, charts, speaker notes, diagrams, animations and image text are omitted.
          Open PPTX to text →
          OCR to PPTX (best effort)

          PDF, PNG, JPG, JPEG, BMP, TIF, TIFF, WEBP → PPTX · tesseract

          Recognize English text and create a plain-text Office document.

          • English model only. Recognition is approximate; inspect the text before relying on it.
          • PDF pages are rendered at 144 DPI. Maximum 20 pages per file. Images use the first frame.
          • Text-only reconstruction: a blank line separates slides, long blocks split after 12 lines. Original slide layout, images, charts and animations are omitted.
          Open OCR to PPTX (best effort) →
          Presentation to PDF

          PPT, PPTX, ODP → PDF · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Presentation to PDF →
          Presentation to PPTX

          PPT, PPTX, ODP → PPTX · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Presentation to PPTX →
          Presentation to ODP

          PPT, PPTX, ODP → ODP · office

          Render and export locally with LibreOffice's ZetaOffice browser build.

          • Desktop browsers with cross-origin isolation and shared WebAssembly memory are required. The engine downloads about 250 MiB and allocates 1 GiB of shared memory.
          • Text input requires UTF-8. Self-contained HTML is accepted for PDF output only. HTML export is unavailable in this stock build.
          • Jobs accept at most 32 MiB across 8 files. Each file is limited to 16 MiB; expanded OOXML/OpenDocument content is limited to 64 MiB.
          • Macros and external-resource access are disabled. Password-protected files and documents containing external links are rejected.
          • The approved stock build includes its fonts. Unavailable fonts are substituted; unsupported Office features and animations may change or be lost.
          Open Presentation to ODP →

          Archives

          Create and extract local archives.

          Repack archive to ZIP

          ZIP, RAR, 7Z, TAR, GZ, BZ2, XZ, TGZ → ZIP · libarchive

          Extract and rebuild an archive in a different container.

          • One output per input archive. Maximum 2,000 entries / 128 MiB expanded size. Encryption, links, special files, permissions and timestamps are not preserved. RAR is input-only.
          Open Repack archive to ZIP →
          Repack archive to TAR.GZ

          ZIP, RAR, 7Z, TAR, GZ, BZ2, XZ, TGZ → GZ · libarchive

          Extract and rebuild an archive in a different container.

          • One output per input archive. Maximum 2,000 entries / 128 MiB expanded size. Encryption, links, special files, permissions and timestamps are not preserved. RAR is input-only.
          Open Repack archive to TAR.GZ →
          Extract RAR / 7Z / TAR

          RAR, 7Z, TAR, GZ, BZ2, XZ, TGZ → * · libarchive

          Extract files from common archive containers locally.

          • RAR is input-only. Maximum 2,000 entries / 128 MiB expanded size. Encrypted archives, links and special filesystem entries are rejected.
          Open Extract RAR / 7Z / TAR →
          Create TAR.GZ

          * → GZ · libarchive

          Bundle selected files into a gzip-compressed USTAR archive.

          • USTAR filename and size restrictions apply. Duplicate names are rejected. No encryption.
          Open Create TAR.GZ →
          Create ZIP

          * → ZIP · zip.js

          Bundle the selected files into one compressed ZIP archive.

          • 128 MiB maximum total input. Duplicate names must be renamed before archiving. ZIP encryption and split archives are unsupported.
          Open Create ZIP →
          Extract ZIP

          ZIP → * · fflate

          Extract files from a ZIP archive locally.

          • Maximum 2,000 entries and 128 MiB expanded size. Encryption, split archives and compression methods other than stored/deflate are unsupported. Unsafe paths are rejected.
          Open Extract ZIP →

          Ebooks

          Reflowable books and reading text.

          Text to EPUB

          TXT, MD → EPUB · EPUB 3 / fflate

          Create a reflowable EPUB 3 book with navigation.

          • One chapter. Markdown is treated as plain text. No illustrations or rich text. Language metadata is English.
          Open Text to EPUB →
          EPUB to PDF

          EPUB → PDF · pdf-lib

          Create a searchable, simply formatted PDF from readable text.

          • Plain text reflow with Helvetica and Western European characters only. Other scripts fail explicitly. Illustrations, book layout and styling are omitted. Maximum 500 pages.
          Open EPUB to PDF →
          FB2 to PDF

          FB2 → PDF · pdf-lib

          Create a searchable, simply formatted PDF from readable text.

          • Plain text reflow with Helvetica and Western European characters only. Other scripts fail explicitly. Illustrations, book layout and styling are omitted. Maximum 500 pages.
          Open FB2 to PDF →
          EPUB to text

          EPUB → TXT · XML / fflate

          Extract readable chapter text in reading order.

          • Text extraction only. Layout, styles, illustrations and notes metadata are discarded. DRM and non-XHTML EPUB chapters are unsupported.
          Open EPUB to text →
          FB2 to text

          FB2 → TXT · XML / fflate

          Extract readable chapter text in reading order.

          • Text extraction only. Layout, styles, illustrations and notes metadata are discarded. DRM and non-XHTML EPUB chapters are unsupported.
          Open FB2 to text →

          Subtitles

          Timed captions and dialogue.

          SRT to VTT

          SRT → VTT · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open SRT to VTT →
          SRT to ASS

          SRT → ASS · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open SRT to ASS →
          SRT to TXT

          SRT → TXT · Subtitle parser

          Extract spoken text from subtitle cues.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open SRT to TXT →
          VTT to SRT

          VTT → SRT · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open VTT to SRT →
          VTT to ASS

          VTT → ASS · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open VTT to ASS →
          VTT to TXT

          VTT → TXT · Subtitle parser

          Extract spoken text from subtitle cues.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open VTT to TXT →
          ASS to SRT

          ASS, SSA → SRT · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open ASS to SRT →
          ASS to VTT

          ASS, SSA → VTT · Subtitle parser

          Convert subtitle timing and plain cue text.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open ASS to VTT →
          ASS to TXT

          ASS, SSA → TXT · Subtitle parser

          Extract spoken text from subtitle cues.

          • Styling, positioning, karaoke, speaker metadata and embedded fonts are discarded. ASS output rounds timing to centiseconds.
          Open ASS to TXT →

          Fonts

          Desktop and web fonts.

          TTF to WOFF

          TTF → WOFF · fonteditor-core

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open TTF to WOFF →
          TTF to WOFF2

          TTF → WOFF2 · woff2

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open TTF to WOFF2 →
          OTF to TTF

          OTF → TTF · fonteditor-core

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open OTF to TTF →
          OTF to WOFF

          OTF → WOFF · fonteditor-core

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open OTF to WOFF →
          OTF to WOFF2

          OTF → WOFF2 · woff2

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open OTF to WOFF2 →
          WOFF to TTF

          WOFF → TTF · fonteditor-core

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open WOFF to TTF →
          WOFF to WOFF2

          WOFF → WOFF2 · woff2

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open WOFF to WOFF2 →
          WOFF2 to TTF

          WOFF2 → TTF · woff2

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open WOFF2 to TTF →
          WOFF2 to WOFF

          WOFF2 → WOFF · woff2

          Rebuild a font for desktop or web use.

          • Variable fonts and color fonts are unsupported. CFF outlines are converted to TrueType outlines. Unsupported tables, layout features, digital signatures and some metadata may be lost. Check your font license before conversion.
          Open WOFF2 to WOFF →

          Data

          JSON, YAML, XML and delimited records.

          JSON to CSV

          JSON → CSV · Structured text

          Convert JSON locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open JSON to CSV →
          JSON to TSV

          JSON → TSV · Structured text

          Convert JSON locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open JSON to TSV →
          JSON to YAML

          JSON → YAML · Structured text

          Convert JSON locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open JSON to YAML →
          JSON to XML

          JSON → XML · Structured text

          Convert JSON locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          Open JSON to XML →
          CSV to JSON

          CSV → JSON · Structured text

          Convert CSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open CSV to JSON →
          CSV to TSV

          CSV → TSV · Structured text

          Convert CSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open CSV to TSV →
          CSV to YAML

          CSV → YAML · Structured text

          Convert CSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open CSV to YAML →
          CSV to XML

          CSV → XML · Structured text

          Convert CSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          • Tabular XML uses a root containing record elements. CSV/TSV export produces records/record/field elements with column names as attributes; XML import also accepts records with named child elements.
          Open CSV to XML →
          TSV to JSON

          TSV → JSON · Structured text

          Convert TSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open TSV to JSON →
          TSV to CSV

          TSV → CSV · Structured text

          Convert TSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open TSV to CSV →
          TSV to YAML

          TSV → YAML · Structured text

          Convert TSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open TSV to YAML →
          TSV to XML

          TSV → XML · Structured text

          Convert TSV locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          • Tabular XML uses a root containing record elements. CSV/TSV export produces records/record/field elements with column names as attributes; XML import also accepts records with named child elements.
          Open TSV to XML →
          YAML to JSON

          YAML, YML → JSON · Structured text

          Convert YAML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open YAML to JSON →
          YAML to CSV

          YAML, YML → CSV · Structured text

          Convert YAML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open YAML to CSV →
          YAML to TSV

          YAML, YML → TSV · Structured text

          Convert YAML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          Open YAML to TSV →
          YAML to XML

          YAML, YML → XML · Structured text

          Convert YAML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          Open YAML to XML →
          XML to JSON

          XML → JSON · Structured text

          Convert XML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          Open XML to JSON →
          XML to CSV

          XML → CSV · Structured text

          Convert XML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          • Tabular XML uses a root containing record elements. CSV/TSV export produces records/record/field elements with column names as attributes; XML import also accepts records with named child elements.
          Open XML to CSV →
          XML to TSV

          XML → TSV · Structured text

          Convert XML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          • Tabular XML uses a root containing record elements. CSV/TSV export produces records/record/field elements with column names as attributes; XML import also accepts records with named child elements.
          Open XML to TSV →
          XML to YAML

          XML → YAML · Structured text

          Convert XML locally with an explicit structured-data mapping.

          • UTF-8 text; maximum total input size is 128 MiB. CSV and TSV use a header row; values stay strings on import, and nested values become JSON strings on export.
          • XML uses one root property, @_ attributes, and #text content. DTDs and entity declarations are rejected; mixed content order is not preserved.
          Open XML to YAML →
          iCalendar events to JSON

          ICS → JSON · Local text parser

          Export iCalendar event records to JSON without uploading your calendar.

          • UTF-8 iCalendar VEVENT records only. Recurrences are reported, not expanded; timestamps and timezone parameters stay literal. Alarms and nested components are omitted. JSON preserves top-level properties; CSV exports selected event fields. Maximum 64 MiB / 100,000 records.
          Open iCalendar events to JSON →
          vCard contacts to JSON

          VCF, VCARD → JSON · Local text parser

          Export UTF-8 vCard contacts to JSON locally.

          • vCard 3.0 and 4.0 only; version 2.1, quoted-printable and embedded binary properties are unsupported. JSON preserves property names, parameters and text; CSV exports selected contact fields, with repeated fields represented as JSON arrays. Maximum 64 MiB / 100,000 contacts.
          Open vCard contacts to JSON →
          HAR network log to JSON

          HAR → JSON · Local text parser

          Summarize HAR request URLs, methods, response statuses, timing and sizes as JSON.

          • Maximum 64 MiB / 100,000 requests. Request and response bodies, cookies and headers are omitted. URLs may contain sensitive query parameters; the summary stays local. Missing or unavailable HAR sizes retain their original values.
          Open HAR network log to JSON →
          iCalendar events to CSV

          ICS → CSV · Local text parser

          Export iCalendar event records to CSV without uploading your calendar.

          • UTF-8 iCalendar VEVENT records only. Recurrences are reported, not expanded; timestamps and timezone parameters stay literal. Alarms and nested components are omitted. JSON preserves top-level properties; CSV exports selected event fields. Maximum 64 MiB / 100,000 records.
          Open iCalendar events to CSV →
          vCard contacts to CSV

          VCF, VCARD → CSV · Local text parser

          Export UTF-8 vCard contacts to CSV locally.

          • vCard 3.0 and 4.0 only; version 2.1, quoted-printable and embedded binary properties are unsupported. JSON preserves property names, parameters and text; CSV exports selected contact fields, with repeated fields represented as JSON arrays. Maximum 64 MiB / 100,000 contacts.
          Open vCard contacts to CSV →
          HAR network log to CSV

          HAR → CSV · Local text parser

          Summarize HAR request URLs, methods, response statuses, timing and sizes as CSV.

          • Maximum 64 MiB / 100,000 requests. Request and response bodies, cookies and headers are omitted. URLs may contain sensitive query parameters; the summary stays local. Missing or unavailable HAR sizes retain their original values.
          Open HAR network log to CSV →
          Inspect PostgreSQL SQL backup

          SQL, DUMP, BACKUP → JSON · PostgreSQL COPY reader

          List table names, columns and row counts from a PostgreSQL plain SQL COPY dump.

          • Plain UTF-8 SQL dumps with text-mode COPY FROM stdin data only. Custom PGDMP, tar/directory archives, INSERT-based dumps and non-UTF-8 dumps are unsupported; use pg_restore or pg_dump to export plain SQL first. SQL is never executed.
          • Maximum 64 MiB, 1,000 tables, 100,000 rows per table and 2 million total cells. Values remain text; JSON preserves SQL NULL, while CSV represents NULL as an empty cell.
          Open Inspect PostgreSQL SQL backup →
          PostgreSQL backup table to CSV

          SQL, DUMP, BACKUP → CSV · PostgreSQL COPY reader

          Extract one table from a PostgreSQL plain SQL COPY dump as CSV.

          • Plain UTF-8 SQL dumps with text-mode COPY FROM stdin data only. Custom PGDMP, tar/directory archives, INSERT-based dumps and non-UTF-8 dumps are unsupported; use pg_restore or pg_dump to export plain SQL first. SQL is never executed.
          • Maximum 64 MiB, 1,000 tables, 100,000 rows per table and 2 million total cells. Values remain text; JSON preserves SQL NULL, while CSV represents NULL as an empty cell.
          Open PostgreSQL backup table to CSV →
          PostgreSQL backup table to JSON

          SQL, DUMP, BACKUP → JSON · PostgreSQL COPY reader

          Extract one table from a PostgreSQL plain SQL COPY dump as JSON.

          • Plain UTF-8 SQL dumps with text-mode COPY FROM stdin data only. Custom PGDMP, tar/directory archives, INSERT-based dumps and non-UTF-8 dumps are unsupported; use pg_restore or pg_dump to export plain SQL first. SQL is never executed.
          • Maximum 64 MiB, 1,000 tables, 100,000 rows per table and 2 million total cells. Values remain text; JSON preserves SQL NULL, while CSV represents NULL as an empty cell.
          Open PostgreSQL backup table to JSON →
          Inspect SQLite database

          SQLITE, SQLITE3, DB → JSON · sqlite

          List SQLite tables, columns and stored schema as a local JSON report.

          • SQLite 3 files only, up to 64 MiB. Encrypted databases and sidecar WAL files are not supported. Views are listed but not evaluated.
          Open Inspect SQLite database →
          SQLite table to CSV

          SQLITE, SQLITE3, DB → CSV · sqlite

          Export one explicitly selected SQLite table to CSV in your browser.

          • SQLite 3 files only, up to 64 MiB; select a table, not a view. BLOB values use an explicit hexadecimal object in JSON and JSON object text in CSV. Integers outside the JavaScript safe range use decimal strings; smaller integers remain numbers.
          • Maximum 100,000 rows and 2 million cells. UTF-8 output. No database connection or SQL execution against an external server.
          Open SQLite table to CSV →
          SQLite table to JSON

          SQLITE, SQLITE3, DB → JSON · sqlite

          Export one explicitly selected SQLite table to JSON in your browser.

          • SQLite 3 files only, up to 64 MiB; select a table, not a view. BLOB values use an explicit hexadecimal object in JSON and JSON object text in CSV. Integers outside the JavaScript safe range use decimal strings; smaller integers remain numbers.
          • Maximum 100,000 rows and 2 million cells. UTF-8 output. No database connection or SQL execution against an external server.
          Open SQLite table to JSON →
          CSV to SQLite database

          CSV → SQLITE · sqlite

          Create a portable, single-table SQLite database from CSV records.

          • Creates a table named records with TEXT columns. CSV values stay strings; nested JSON values are JSON text; null remains SQL NULL. This does not reproduce keys, indexes, relationships or an existing schema.
          • Maximum 100,000 rows and 2 million cells. UTF-8 output. No database connection or SQL execution against an external server.
          Open CSV to SQLite database →
          JSON to SQLite database

          JSON → SQLITE · sqlite

          Create a portable, single-table SQLite database from JSON records.

          • Creates a table named records with TEXT columns. CSV values stay strings; nested JSON values are JSON text; null remains SQL NULL. This does not reproduce keys, indexes, relationships or an existing schema.
          • Maximum 100,000 rows and 2 million cells. UTF-8 output. No database connection or SQL execution against an external server.
          Open JSON to SQLite database →
          Parquet to JSON

          PARQUET → JSON · Parquet reader

          Read Apache Parquet rows and export JSON locally.

          • Maximum 64 MiB and 100,000 rows / 2 million values. Uncompressed and Snappy files are supported; other codecs are rejected. Integers outside the JavaScript safe range use decimal strings; smaller integers remain numbers. Timestamps use ISO text and binary values use hexadecimal objects. Nested values become JSON text in CSV.
          Open Parquet to JSON →
          Parquet to CSV

          PARQUET → CSV · Parquet reader

          Read Apache Parquet rows and export CSV locally.

          • Maximum 64 MiB and 100,000 rows / 2 million values. Uncompressed and Snappy files are supported; other codecs are rejected. Integers outside the JavaScript safe range use decimal strings; smaller integers remain numbers. Timestamps use ISO text and binary values use hexadecimal objects. Nested values become JSON text in CSV.
          Open Parquet to CSV →
          Inspect Parquet schema

          PARQUET → JSON · Parquet reader

          Read Parquet column schema, row groups and metadata without exporting row data.

          • Maximum 64 MiB. Reports the stored file metadata; it does not modify or repair the file.
          Open Inspect Parquet schema →
          JSON Lines to JSON

          JSONL, NDJSON → JSON · Structured text

          Convert newline-delimited JSON records to JSON.

          • UTF-8, one JSON object per non-empty line; maximum 64 MiB / 100,000 records. Invalid lines are reported by line number. Nested values become JSON text in CSV.
          Open JSON Lines to JSON →
          JSON Lines to CSV

          JSONL, NDJSON → CSV · Structured text

          Convert newline-delimited JSON records to CSV.

          • UTF-8, one JSON object per non-empty line; maximum 64 MiB / 100,000 records. Invalid lines are reported by line number. Nested values become JSON text in CSV.
          Open JSON Lines to CSV →
          JSON to JSON Lines

          JSON → JSONL · Structured text

          Write a JSON array of records as one compact object per line for data pipelines.

          • UTF-8 input must be an array of objects. Maximum 64 MiB / 100,000 records.
          Open JSON to JSON Lines →

          CAD / 3D

          Mesh conversion and model inspection.

          3D / CAD to OBJ

          STL, PLY, GLTF, GLB, FBX, DAE, STEP, STP, IGES, IGS, BREP → OBJ · Three.js + Assimp + Open CASCADE

          Convert static meshes and FBX/DAE scenes; tessellate STEP, IGES or BREP solids locally.

          • Maximum input 80 MB. STEP / IGES tessellation uses millimeters. STL / OBJ / PLY use source units.
          • Self-contained uncompressed glTF/GLB only; external buffers/images, skins and morph targets are rejected. Animation is discarded.
          • FBX/DAE base geometry must be contained in one file. FBX blend shapes and animation are discarded; skins, COLLADA controllers, points and lines are rejected. Assimp applies scene transforms and importer unit/axis conventions; check dimensions before manufacturing. Maximum 2 million expanded vertices. External textures are ignored and never fetched.
          • Triangle geometry export only. CAD solids become triangles; hierarchy, materials, textures, normals, UVs, vertex/face colors, animation and rigging are discarded. CAD export is unavailable.
          Open 3D / CAD to OBJ →
          3D / CAD to STL

          OBJ, PLY, GLTF, GLB, FBX, DAE, STEP, STP, IGES, IGS, BREP → STL · Three.js + Assimp + Open CASCADE

          Convert static meshes and FBX/DAE scenes; tessellate STEP, IGES or BREP solids locally.

          • Maximum input 80 MB. STEP / IGES tessellation uses millimeters. STL / OBJ / PLY use source units.
          • Self-contained uncompressed glTF/GLB only; external buffers/images, skins and morph targets are rejected. Animation is discarded.
          • FBX/DAE base geometry must be contained in one file. FBX blend shapes and animation are discarded; skins, COLLADA controllers, points and lines are rejected. Assimp applies scene transforms and importer unit/axis conventions; check dimensions before manufacturing. Maximum 2 million expanded vertices. External textures are ignored and never fetched.
          • Triangle geometry export only. CAD solids become triangles; hierarchy, materials, textures, normals, UVs, vertex/face colors, animation and rigging are discarded. CAD export is unavailable.
          Open 3D / CAD to STL →
          3D / CAD to PLY

          OBJ, STL, GLTF, GLB, FBX, DAE, STEP, STP, IGES, IGS, BREP → PLY · Three.js + Assimp + Open CASCADE

          Convert static meshes and FBX/DAE scenes; tessellate STEP, IGES or BREP solids locally.

          • Maximum input 80 MB. STEP / IGES tessellation uses millimeters. STL / OBJ / PLY use source units.
          • Self-contained uncompressed glTF/GLB only; external buffers/images, skins and morph targets are rejected. Animation is discarded.
          • FBX/DAE base geometry must be contained in one file. FBX blend shapes and animation are discarded; skins, COLLADA controllers, points and lines are rejected. Assimp applies scene transforms and importer unit/axis conventions; check dimensions before manufacturing. Maximum 2 million expanded vertices. External textures are ignored and never fetched.
          • Triangle geometry export only. CAD solids become triangles; hierarchy, materials, textures, normals, UVs, vertex/face colors, animation and rigging are discarded. CAD export is unavailable.
          Open 3D / CAD to PLY →
          3D / CAD to GLB

          OBJ, STL, PLY, GLTF, FBX, DAE, STEP, STP, IGES, IGS, BREP → GLB · Three.js + Assimp + Open CASCADE

          Convert static meshes and FBX/DAE scenes; tessellate STEP, IGES or BREP solids locally.

          • Maximum input 80 MB. STEP / IGES tessellation uses millimeters. STL / OBJ / PLY use source units.
          • Self-contained uncompressed glTF/GLB only; external buffers/images, skins and morph targets are rejected. Animation is discarded.
          • FBX/DAE base geometry must be contained in one file. FBX blend shapes and animation are discarded; skins, COLLADA controllers, points and lines are rejected. Assimp applies scene transforms and importer unit/axis conventions; check dimensions before manufacturing. Maximum 2 million expanded vertices. External textures are ignored and never fetched.
          • Triangle geometry export only. CAD solids become triangles; hierarchy, materials, textures, normals, UVs, vertex/face colors, animation and rigging are discarded. CAD export is unavailable.
          Open 3D / CAD to GLB →
          3D / CAD to GLTF

          OBJ, STL, PLY, GLB, FBX, DAE, STEP, STP, IGES, IGS, BREP → GLTF · Three.js + Assimp + Open CASCADE

          Convert static meshes and FBX/DAE scenes; tessellate STEP, IGES or BREP solids locally.

          • Maximum input 80 MB. STEP / IGES tessellation uses millimeters. STL / OBJ / PLY use source units.
          • Self-contained uncompressed glTF/GLB only; external buffers/images, skins and morph targets are rejected. Animation is discarded.
          • FBX/DAE base geometry must be contained in one file. FBX blend shapes and animation are discarded; skins, COLLADA controllers, points and lines are rejected. Assimp applies scene transforms and importer unit/axis conventions; check dimensions before manufacturing. Maximum 2 million expanded vertices. External textures are ignored and never fetched.
          • Triangle geometry export only. CAD solids become triangles; hierarchy, materials, textures, normals, UVs, vertex/face colors, animation and rigging are discarded. CAD export is unavailable.
          Open 3D / CAD to GLTF →

          Geospatial

          Geographic vector data.

          Vector dataset to GeoJSON

          GEOJSON, KML, GPKG, ZIP → GEOJSON · GDAL WASM

          Convert one selected vector layer and reproject it entirely on your device.

          • 64 MB input / ZIP expansion limit. ZIP must contain one complete Shapefile; loose .shp sidecars are not accepted. Explicit layer, source CRS and target CRS choices required.
          • Only GeoJSON, KML, GeoPackage and Shapefile drivers are registered. External resources and network access are blocked. Output layer is named converted.
          • GeoJSON / KML output is WGS84. Shapefile field names and types are limited; KML renames standard name/description fields and may discard unsupported attributes. Styles and non-selected layers are omitted.
          Open Vector dataset to GeoJSON →
          Vector dataset to GeoPackage

          GEOJSON, KML, GPKG, ZIP → GPKG · GDAL WASM

          Convert one selected vector layer and reproject it entirely on your device.

          • 64 MB input / ZIP expansion limit. ZIP must contain one complete Shapefile; loose .shp sidecars are not accepted. Explicit layer, source CRS and target CRS choices required.
          • Only GeoJSON, KML, GeoPackage and Shapefile drivers are registered. External resources and network access are blocked. Output layer is named converted.
          • GeoJSON / KML output is WGS84. Shapefile field names and types are limited; KML renames standard name/description fields and may discard unsupported attributes. Styles and non-selected layers are omitted.
          Open Vector dataset to GeoPackage →
          Vector dataset to KML

          GEOJSON, KML, GPKG, ZIP → KML · GDAL WASM

          Convert one selected vector layer and reproject it entirely on your device.

          • 64 MB input / ZIP expansion limit. ZIP must contain one complete Shapefile; loose .shp sidecars are not accepted. Explicit layer, source CRS and target CRS choices required.
          • Only GeoJSON, KML, GeoPackage and Shapefile drivers are registered. External resources and network access are blocked. Output layer is named converted.
          • GeoJSON / KML output is WGS84. Shapefile field names and types are limited; KML renames standard name/description fields and may discard unsupported attributes. Styles and non-selected layers are omitted.
          Open Vector dataset to KML →
          Vector dataset to Shapefile ZIP

          GEOJSON, KML, GPKG, ZIP → ZIP · GDAL WASM

          Convert one selected vector layer and reproject it entirely on your device.

          • 64 MB input / ZIP expansion limit. ZIP must contain one complete Shapefile; loose .shp sidecars are not accepted. Explicit layer, source CRS and target CRS choices required.
          • Only GeoJSON, KML, GeoPackage and Shapefile drivers are registered. External resources and network access are blocked. Output layer is named converted.
          • GeoJSON / KML output is WGS84. Shapefile field names and types are limited; KML renames standard name/description fields and may discard unsupported attributes. Styles and non-selected layers are omitted.
          Open Vector dataset to Shapefile ZIP →
          Reproject GeoTIFF band

          TIF, TIFF → TIF · GDAL WASM

          Select one raster band and export a reprojected, losslessly compressed GeoTIFF.

          • 64 MB input and 16 million pixels. Select one band and explicit coordinate systems.
          • Nearest-neighbor resampling; output keeps source pixel dimensions. Other bands, pyramids, styling and auxiliary metadata are omitted. Remote resources are blocked.
          Open Reproject GeoTIFF band →
          GeoTIFF band to PNG

          TIF, TIFF → PNG · GDAL WASM

          Preview one raster band as a contrast-scaled grayscale PNG.

          • 64 MB input and 16 million pixels. Select one band and explicitly confirm source coordinates and source pixel grid.
          • Pixel values are scaled to 8-bit for display. PNG discards georeferencing, original numeric precision, other bands and dataset metadata. No reprojection.
          Open GeoTIFF band to PNG →
          GeoJSON to KML

          GEOJSON → KML · Native WGS84 vector mapping

          Map self-contained WGS84 point, line and polygon features into KML.

          • 20 MB / 100,000 features. Explicit WGS84 and layer choices required. No reprojection, Shapefile, GeoPackage or raster drivers.
          • Properties become KML ExtendedData strings. Nested properties become JSON text; feature IDs, styles and bbox are omitted.
          Open GeoJSON to KML →
          KML to GeoJSON

          KML → GEOJSON · Native WGS84 vector mapping

          Extract vector placemarks from a self-contained KML document.

          • 20 MB / 100,000 features. All selected placemarks form one collection. MultiGeometry becomes GeometryCollection.
          • Styles, altitude modes, timestamps, folder hierarchy and feature IDs are omitted. Links, overlays, tracks, 3D models and typed SchemaData are rejected. No KMZ.
          Open KML to GeoJSON →

          Scientific

          Scientific matrices, biological sequences and genomic annotations.

          HDF5 dataset to JSON

          H5, HDF5, HDF, NXS → JSON · h5wasm

          Select one numeric HDF5 dataset and export its values locally.

          • 100 MB input; 2 million selected elements. Explicit dataset path required. Compound, reference, string and variable-length data unsupported.
          • JSON preserves dimensions and dtype in an envelope. CSV contains values only, without headers; rank must be 1 or 2. Attributes are omitted; unsafe integers and non-finite values are rejected.
          Open HDF5 dataset to JSON →
          HDF5 dataset to CSV

          H5, HDF5, HDF, NXS → CSV · h5wasm

          Select one numeric HDF5 dataset and export its values locally.

          • 100 MB input; 2 million selected elements. Explicit dataset path required. Compound, reference, string and variable-length data unsupported.
          • JSON preserves dimensions and dtype in an envelope. CSV contains values only, without headers; rank must be 1 or 2. Attributes are omitted; unsafe integers and non-finite values are rejected.
          Open HDF5 dataset to CSV →
          Numeric data to HDF5

          JSON, CSV → H5 · h5wasm

          Create a single selected HDF5 dataset from a numeric matrix or an exported JSON envelope.

          • 2 million finite numeric elements. CSV requires a rectangular matrix without a header and writes float64.
          • JSON must contain flat data, shape and dtype. Creates a new file with one dataset; does not preserve source attributes.
          Open Numeric data to HDF5 →
          Inspect FASTA sequences

          FASTA, FA, FNA, FFN, FAA, FRN → JSON · Local sequence parser

          Summarize FASTA record lengths and sequence symbol counts locally.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Accepts IUPAC nucleotide and protein letters, gaps and stop symbols. Sequence case is preserved. Symbol counts are literal; alphabet and DNA/protein identity are not inferred. Semicolon comments are omitted.
          Open Inspect FASTA sequences →
          FASTA to CSV

          FASTA, FA, FNA, FFN, FAA, FRN → CSV · Local sequence parser

          Export FASTA identifiers, descriptions and sequence strings to CSV.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Accepts IUPAC nucleotide and protein letters, gaps and stop symbols. Sequence case is preserved. Symbol counts are literal; alphabet and DNA/protein identity are not inferred. Semicolon comments are omitted.
          Open FASTA to CSV →
          FASTA to JSON

          FASTA, FA, FNA, FFN, FAA, FRN → JSON · Local sequence parser

          Export FASTA identifiers, descriptions and sequence strings to JSON.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Accepts IUPAC nucleotide and protein letters, gaps and stop symbols. Sequence case is preserved. Symbol counts are literal; alphabet and DNA/protein identity are not inferred. Semicolon comments are omitted.
          Open FASTA to JSON →
          FASTA DNA reverse complement

          FASTA, FA, FNA, FFN, FAA, FRN → FASTA · Local sequence parser

          Reverse complement IUPAC DNA sequences in a FASTA file while retaining their headers.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • DNA IUPAC symbols only; RNA U, gaps, stop symbols and protein-only symbols are rejected. Case is preserved.
          Open FASTA DNA reverse complement →
          Inspect FASTQ reads and quality

          FASTQ, FQ → JSON · Local sequence parser

          Inspect FASTQ read lengths and explicit Phred+33 quality statistics in your browser.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Four-line FASTQ records only, no wrapped sequences or quality. IUPAC nucleotide symbols and printable ASCII quality. Sequence/quality lengths and repeated plus-line headers must match. Inspection assumes Phred+33 explicitly; historical Phred+64 and Solexa scores are not detected.
          Open Inspect FASTQ reads and quality →
          FASTQ to FASTA

          FASTQ, FQ → FASTA · Local sequence parser

          Extract FASTQ read headers and sequences as FASTA, discarding quality scores.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Four-line FASTQ records only, no wrapped sequences or quality. IUPAC nucleotide symbols and printable ASCII quality. Sequence/quality lengths and repeated plus-line headers must match. Inspection assumes Phred+33 explicitly; historical Phred+64 and Solexa scores are not detected.
          Open FASTQ to FASTA →
          FASTQ to CSV

          FASTQ, FQ → CSV · Local sequence parser

          Export FASTQ headers, sequences and original quality strings to CSV.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Four-line FASTQ records only, no wrapped sequences or quality. IUPAC nucleotide symbols and printable ASCII quality. Sequence/quality lengths and repeated plus-line headers must match. Inspection assumes Phred+33 explicitly; historical Phred+64 and Solexa scores are not detected.
          Open FASTQ to CSV →
          FASTQ to JSON

          FASTQ, FQ → JSON · Local sequence parser

          Export FASTQ headers, sequences and original quality strings to JSON.

          • UTF-8, uncompressed files only, maximum 64 MiB, 100,000 records and 20 million sequence symbols. No alignment or biological interpretation.
          • Four-line FASTQ records only, no wrapped sequences or quality. IUPAC nucleotide symbols and printable ASCII quality. Sequence/quality lengths and repeated plus-line headers must match. Inspection assumes Phred+33 explicitly; historical Phred+64 and Solexa scores are not detected.
          Open FASTQ to JSON →
          BED intervals to CSV

          BED → CSV · Local genomic table parser

          Export BED intervals as CSV while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • BED3 through BED12 with a consistent column count. Coordinates remain 0-based, half-open. Browser/track/comment lines are omitted from CSV and retained in JSON metadata. BED block fields stay literal comma-separated text.
          Open BED intervals to CSV →
          BED intervals to JSON

          BED → JSON · Local genomic table parser

          Export BED intervals as JSON while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • BED3 through BED12 with a consistent column count. Coordinates remain 0-based, half-open. Browser/track/comment lines are omitted from CSV and retained in JSON metadata. BED block fields stay literal comma-separated text.
          Open BED intervals to JSON →
          GFF3 features to CSV

          GFF, GFF3 → CSV · Local genomic table parser

          Export GFF3 features as CSV while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Requires ##gff-version 3 and nine tab-separated columns. Coordinates remain 1-based, inclusive. Attributes stay literal encoded text. Directives/comments are retained in JSON metadata; embedded ##FASTA sequence is omitted.
          Open GFF3 features to CSV →
          GFF3 features to JSON

          GFF, GFF3 → JSON · Local genomic table parser

          Export GFF3 features as JSON while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Requires ##gff-version 3 and nine tab-separated columns. Coordinates remain 1-based, inclusive. Attributes stay literal encoded text. Directives/comments are retained in JSON metadata; embedded ##FASTA sequence is omitted.
          Open GFF3 features to JSON →
          GTF gene annotations to CSV

          GTF → CSV · Local genomic table parser

          Export GTF gene annotations as CSV while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Nine tab-separated columns with quoted GTF attributes. Coordinates remain 1-based, inclusive. Attributes stay literal text; comments are retained only in JSON metadata.
          Open GTF gene annotations to CSV →
          GTF gene annotations to JSON

          GTF → JSON · Local genomic table parser

          Export GTF gene annotations as JSON while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Nine tab-separated columns with quoted GTF attributes. Coordinates remain 1-based, inclusive. Attributes stay literal text; comments are retained only in JSON metadata.
          Open GTF gene annotations to JSON →
          Genomic VCF variants to CSV

          VCF → CSV · Local genomic table parser

          Export Genomic VCF variants as CSV while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Plain VCF 4.1–4.5 with ##fileformat and #CHROM headers. INFO, FORMAT, ALT and sample genotypes stay literal strings; no variant normalization, allele splitting, reference lookup or genotype interpretation. This is genomic VCF, not a vCard contact file.
          Open Genomic VCF variants to CSV →
          Genomic VCF variants to JSON

          VCF → JSON · Local genomic table parser

          Export Genomic VCF variants as JSON while retaining the source coordinate convention and raw annotation fields.

          • UTF-8, uncompressed input only, maximum 64 MiB, 100,000 records and 2 million cells. No assembly or coordinate-system conversion. Missing values remain literal dots; CSV cells are not sanitized for spreadsheet formulas.
          • Plain VCF 4.1–4.5 with ##fileformat and #CHROM headers. INFO, FORMAT, ALT and sample genotypes stay literal strings; no variant normalization, allele splitting, reference lookup or genotype interpretation. This is genomic VCF, not a vCard contact file.
          Open Genomic VCF variants to JSON →
          Inspect genomic VCF variants

          VCF → JSON · Local genomic table parser

          List a genomic VCF file’s version, sample names, variant counts and chromosome counts locally.

          • Plain UTF-8 VCF 4.1–4.5 only, maximum 64 MiB, 100,000 variants and 2 million cells. Not vCard contacts, binary BCF or compressed VCF. Counts describe records, not normalized alleles; genotypes are not interpreted.
          Open Inspect genomic VCF variants →
          Inspect Matrix Market matrix

          MTX → JSON · Local scientific matrix parser

          Inspect Matrix Market sparse coordinates and dimensions locally.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • Matrix Market coordinate real, integer or pattern; general or symmetric only. JSON retains 1-based coordinates and symmetric storage. Duplicate coordinates are summed, with unsafe integer sums rejected. CSV expands symmetric entries. Complex, array, skew-symmetric and Hermitian formats are unsupported.
          Open Inspect Matrix Market matrix →
          Matrix Market to CSV

          MTX → CSV · Local scientific matrix parser

          Export Matrix Market sparse data as CSV with explicit shape and precision limits.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • Matrix Market coordinate real, integer or pattern; general or symmetric only. JSON retains 1-based coordinates and symmetric storage. Duplicate coordinates are summed, with unsafe integer sums rejected. CSV expands symmetric entries. Complex, array, skew-symmetric and Hermitian formats are unsupported.
          Open Matrix Market to CSV →
          Matrix Market to JSON

          MTX → JSON · Local scientific matrix parser

          Export Matrix Market sparse data as JSON with explicit shape and precision limits.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • Matrix Market coordinate real, integer or pattern; general or symmetric only. JSON retains 1-based coordinates and symmetric storage. Duplicate coordinates are summed, with unsafe integer sums rejected. CSV expands symmetric entries. Complex, array, skew-symmetric and Hermitian formats are unsupported.
          Open Matrix Market to JSON →
          Inspect NumPy NPY matrix

          NPY → JSON · Local scientific matrix parser

          Inspect NumPy NPY shape, numeric dtype and storage order locally.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • NPY v1/v2/v3, plain numeric/bool dtype only: signed/unsigned 1/2/4/8-byte integers, float32/64 and bool. Endianness and C/Fortran order are handled. No object/pickle, structured, string, float16, complex, NPZ or masked arrays. JSON stores flat data in original storage order with shape/dtype; unsafe integers are decimal strings. CSV supports rank 0–2 and lays out rows/columns; JSON supports rank up to 32.
          Open Inspect NumPy NPY matrix →
          NumPy NPY to CSV

          NPY → CSV · Local scientific matrix parser

          Export NumPy numeric arrays as CSV with explicit shape and precision limits.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • NPY v1/v2/v3, plain numeric/bool dtype only: signed/unsigned 1/2/4/8-byte integers, float32/64 and bool. Endianness and C/Fortran order are handled. No object/pickle, structured, string, float16, complex, NPZ or masked arrays. JSON stores flat data in original storage order with shape/dtype; unsafe integers are decimal strings. CSV supports rank 0–2 and lays out rows/columns; JSON supports rank up to 32.
          Open NumPy NPY to CSV →
          NumPy NPY to JSON

          NPY → JSON · Local scientific matrix parser

          Export NumPy numeric arrays as JSON with explicit shape and precision limits.

          • Maximum 64 MiB and 2 million stored values/coordinates; each dimension is at most 2 million. Only finite values are supported. Dense CSV is capped at 2 million cells.
          • NPY v1/v2/v3, plain numeric/bool dtype only: signed/unsigned 1/2/4/8-byte integers, float32/64 and bool. Endianness and C/Fortran order are handled. No object/pickle, structured, string, float16, complex, NPZ or masked arrays. JSON stores flat data in original storage order with shape/dtype; unsafe integers are decimal strings. CSV supports rank 0–2 and lays out rows/columns; JSON supports rank up to 32.
          Open NumPy NPY to JSON →
          Numeric CSV to Matrix Market

          CSV → MTX · Local scientific matrix parser

          Turn a headerless numeric CSV matrix into sparse Matrix Market coordinate data, omitting zero entries.

          • Headerless rectangular UTF-8 CSV, maximum 64 MiB and 2 million cells. Cells must be finite decimal numbers; empty cells and unsafe integers are rejected. Writes real general coordinates with 1-based indices. Row/column labels and metadata are not included.
          Open Numeric CSV to Matrix Market →
          Inspect HDF5 scientific file

          H5, HDF5, HDF, NXS, LOOM, H5MU, NC → JSON · h5wasm

          List datasets, dimensions and datatypes in HDF5, Loom, MuData and HDF5-based NetCDF4 files.

          • HDF5 containers only; classic NetCDF3 is unsupported. Maximum 64 MiB, 24 levels and 1,000 entries. External and symbolic links are rejected. No dataset values are exported.
          Open Inspect HDF5 scientific file →
          Inspect AnnData H5AD

          H5AD → JSON · h5wasm

          Inspect AnnData groups and datasets, including expression matrices, cell observations and gene variables.

          • Modern AnnData HDF5 encodings only. Maximum 64 MiB and 2 million values per dataset. Numeric matrices must be finite and exactly representable; external links and unsupported encodings are rejected.
          • Matrix JSON retains sparse indices and pointers; matrix CSV expands to dense values with a 2 million cell cap and no row/column labels. Export obs and var separately for labels. Annotation CSV turns missing values into empty cells. This does not recreate a complete H5AD file.
          Open Inspect AnnData H5AD →
          H5AD matrix to JSON

          H5AD → JSON · h5wasm

          Export an AnnData matrix as JSON, preserving dense values or sparse CSR and CSC indices and pointers.

          • Modern AnnData HDF5 encodings only. Maximum 64 MiB and 2 million values per dataset. Numeric matrices must be finite and exactly representable; external links and unsupported encodings are rejected.
          • Matrix JSON retains sparse indices and pointers; matrix CSV expands to dense values with a 2 million cell cap and no row/column labels. Export obs and var separately for labels. Annotation CSV turns missing values into empty cells. This does not recreate a complete H5AD file.
          Open H5AD matrix to JSON →
          H5AD matrix to CSV

          H5AD → CSV · h5wasm

          Export a selected AnnData expression matrix as dense CSV, expanding sparse CSR or CSC storage locally.

          • Modern AnnData HDF5 encodings only. Maximum 64 MiB and 2 million values per dataset. Numeric matrices must be finite and exactly representable; external links and unsupported encodings are rejected.
          • Matrix JSON retains sparse indices and pointers; matrix CSV expands to dense values with a 2 million cell cap and no row/column labels. Export obs and var separately for labels. Annotation CSV turns missing values into empty cells. This does not recreate a complete H5AD file.
          Open H5AD matrix to CSV →
          H5AD cell annotations to CSV

          H5AD → CSV · h5wasm

          Export AnnData cell observations to CSV, decoding categorical annotations and preserving cell index labels.

          • Modern AnnData HDF5 encodings only. Maximum 64 MiB and 2 million values per dataset. Numeric matrices must be finite and exactly representable; external links and unsupported encodings are rejected.
          • Matrix JSON retains sparse indices and pointers; matrix CSV expands to dense values with a 2 million cell cap and no row/column labels. Export obs and var separately for labels. Annotation CSV turns missing values into empty cells. This does not recreate a complete H5AD file.
          Open H5AD cell annotations to CSV →
          H5AD gene annotations to CSV

          H5AD → CSV · h5wasm

          Export AnnData gene variables to CSV, decoding categorical annotations and preserving gene index labels.

          • Modern AnnData HDF5 encodings only. Maximum 64 MiB and 2 million values per dataset. Numeric matrices must be finite and exactly representable; external links and unsupported encodings are rejected.
          • Matrix JSON retains sparse indices and pointers; matrix CSV expands to dense values with a 2 million cell cap and no row/column labels. Export obs and var separately for labels. Annotation CSV turns missing values into empty cells. This does not recreate a complete H5AD file.
          Open H5AD gene annotations to CSV →

          Text

          Plain text and extracted content.

          Text to HTML

          TXT, MD → HTML · Native text

          Create a standalone UTF-8 HTML page with readable, escaped text.

          • Markdown syntax remains literal. No scripts, external fonts or remote resources.
          Open Text to HTML →
          Text to PDF

          TXT → PDF · pdf-lib

          Create a searchable, simply formatted PDF from readable text.

          • Plain text reflow with Helvetica and Western European characters only. Other scripts fail explicitly. Illustrations, book layout and styling are omitted. Maximum 500 pages.
          Open Text to PDF →
          Jupyter notebook to Markdown

          IPYNB → MD · Local text parser

          Extract Jupyter notebook source cells as a readable Markdown document with fenced code.

          • Notebook v4 only, up to 64 MiB / 100,000 cells. Execution outputs, embedded attachments and display widgets are omitted. Cells are never executed.
          Open Jupyter notebook to Markdown →
          Jupyter notebook to Python script

          IPYNB → PY · Local text parser

          Extract code cells from a Python Jupyter notebook into a script with cell separators.

          • Notebook v4 with a declared Python kernel only. Markdown and outputs are omitted. IPython magics remain literal and may not run as ordinary Python. Code is never executed. Maximum 64 MiB / 100,000 cells.
          Open Jupyter notebook to Python script →