Tools
Reduce image file size by re-encoding at a lower quality.
Convert images between JPEG, PNG, and WebP formats.
Remove EXIF metadata (including GPS, camera model, timestamps) by re-encoding at near-lossless quality.
Combine one or more images into a single PDF document.
Combine multiple PDF files into a single document.
Split a PDF into separate files by page or custom ranges.
Rotate all or selected pages of a PDF by 90, 180, or 270 degrees.
Rearrange, duplicate, or remove pages in a PDF using a custom order.
Draw page numbers on each page of a PDF at a configurable position.
Extract dominant colors from an image as hex codes.
Generate a QR code image from text or a URL.
Add a text or image watermark to every page of a PDF.
Extract plain text from a PDF file.
Pixel-level diff between two images of the same dimensions.
Rotate images by 90, 180, or 270 degrees.
Flip images horizontally or vertically.
Convert images to grayscale using luminance weighting.
Apply a warm sepia tone to images.
Invert the colors of images.
Extract dimensions, format, and metadata from an image.
Extract page count and metadata from a PDF.
Compute SHA-256, SHA-1, or SHA-512 hashes of files.
Crop a rectangular region from an image.
Resize images with exact dimensions, fit-within-box, or percent scaling.
Overlay a text watermark onto images.
Generate a complete favicon set (PNG sizes + ICO + webmanifest) from any image.
Render each page of a PDF as an image (PNG, JPEG, or WebP).
Parse and pretty-print JSON with configurable indentation.
Encode any file to Base64 text or decode Base64 back to bytes.
Encode or decode URL components and full URLs.
Convert a color string to hex, RGB, HSL, Oklch, and Oklab formats.
Convert Markdown to HTML with optional GitHub Flavored Markdown support.
Convert HTML to clean Markdown text.
Compare two text files and produce a unified diff with change statistics.
Count words, characters, sentences, paragraphs, and estimate reading time.
Generate cryptographically random passwords with configurable character sets.
Generate one or more random UUID v4 identifiers.
Extract text from images using optical character recognition.
Convert SVG files to PNG images with optional scale factor and background color.
Convert epoch seconds, epoch milliseconds, or ISO 8601 timestamps to all common representations.
Generate placeholder Latin text (lorem ipsum) with configurable paragraphs and sentence length.
Test a regular expression against text and see all matches with positions and named groups.
Extract specific pages from a PDF into a new document.
Remove specific pages from a PDF.
Reduces PDF size by re-encoding embedded images. Does not remove unused resources, subset fonts, or repair stream encoding.
Password-protect a PDF with optional permission restrictions.
Remove password protection from a PDF.
Permanently cover content in a PDF with solid rectangles. Underlying text objects may still be extractable by specialized tools. For forensic-grade redaction, flatten the output via pdf-compress after redacting.
Read, write, or strip metadata (title, author, keywords, etc.) from a PDF.
Extract tabular data from a PDF as JSON or CSV. Works well for simple tables with aligned columns and no merged cells. Complex tables, rotated text, and scanned PDFs (images) will not extract cleanly.
Crop PDF pages by setting the crop box. Modifies the viewing area without destroying content (reversible).
Detect every face in a photo and blur it — runs entirely on your device.
Upscale low-quality audio to clean 48 kHz. Great for cleaning up phone recordings, Zoom calls, or old podcasts.
Convert speech to text using OpenAI Whisper — runs entirely on your device. Pick a model: tiny (~80 MB, fast), base (~250 MB, recommended), or small (~600 MB, best). The chosen model downloads on first use, then works offline.
Hosted Whisper-large-v3 transcription — higher accuracy and better with noisy or accented speech than the free in-browser version. Uses 3 credits per run.
Split prose into individual sentences using natural-language analysis. Great as a chain primitive — feed each sentence to translate, summarize, or sentiment downstream.
Pull the topic-bearing nouns and noun phrases out of any text. Answers "what is this about" — not "what words appear most" (try Text Frequency for that). Runs entirely in your browser.
Pull every date reference out of text — "next Tuesday", "Q3 2025", "March 14" — and (optionally) normalize to ISO. Runs entirely in your browser; useful for cleaning meeting notes, emails, or invoices.
Extract plain text from a Word document (.docx). Runs entirely in your browser — file never uploads. Great as a chain source: feed the output into translate, summarize, or any text tool.
Strip ads, sidebars, and navigation from a web page and keep only the article body. Paste the page's HTML (View Source → Copy → paste here). Powered by Mozilla's Reader View algorithm. Runs entirely in your browser.
Lock interactive form fields into the page content so values can't be edited or cleared. Useful before sending a filled form back to a counterparty. Runs entirely in your browser.
List every interactive form field in a PDF — name, type, required/read-only flags, and current value where present. Read-only inspection; use Flatten PDF Form to lock the values in.
Strip entries from a ZIP archive by glob pattern (e.g. `**/.env` to drop dotfiles before sharing). Returns a new archive — original is untouched. Runs entirely in your browser.
Collapse all files in a ZIP archive to the top level — strips every directory layer. Useful when an export gave you `vendor/long/path/file.txt` and you just want `file.txt`. Configurable collision handling. Runs in your browser.
Higher-quality summarization powered by a hosted Llama-class model. Pairs well with transcribe-pro for "audio → notes" flows. Uses 2 credits per run.
Hosted Llama-class translation. Higher quality than browser-only models — particularly for less common language pairs. Uses 2 credits per run.
Hosted LLM sentiment classification — handles sarcasm, mixed tone, and domain language the in-browser heuristic misses. Returns positive / negative / neutral. Uses 1 credit per run.
Hosted LLM named-entity extraction — pulls people, organisations, places, dates, and money references with much better recall than browser models on long-form text. Uses 1 credit per run.
Hosted LLM strips personal data — names, emails, phones, addresses, SSNs, card-shaped numbers — replacing each with [REDACTED]. Catches free-form mentions ("met Joe at Acme HQ in March") that pattern-based redaction misses. Uses 2 credits per run.
Hosted large RMBG model — cleaner edges on hair, glass, and fine detail than the in-browser version. Output is a transparent PNG. Uses 3 credits per run.
Hosted Real-ESRGAN upscale, 2× or 4×. Sharper edges, better fine detail than the in-browser variant — and faster on large inputs since the GPU does the heavy lifting. Uses 3 credits per run.
High-quality text extraction from images and scans, powered by a hosted vision model. Output is plain text — chains into translate, summarize, and other text tools. Uses 1 credit per run.
Generates a concise description / alt-text for an image using a hosted vision model. Output is plain text. Uses 1 credit per run.
Reads a chart, graph, or diagram image and explains the data and main trend in plain text. Uses 1 credit per run.
Ask a question about an image and get an answer from a hosted vision model. Uses 1 credit per run.
Transcribes handwritten text from an image using a hosted vision model. Output is plain text. Uses 1 credit per run.
Detects and locates objects in an image, returning labels, confidence scores, and bounding boxes as JSON. Uses 1 credit per run.
Extracts text from an image and translates it. Photograph a sign or document, get the translation. Uses 2 credits per run.
Transcribes an audio file and translates the transcript in one step. Uses 5 credits per run.
AI-generated regular expressions for descriptions the free heuristic engine cannot match. A hosted LLM handles arbitrary, open-ended phrasings. Uses 1 credit per run.
AI-generated cron expressions for schedules the free heuristic engine cannot parse. A hosted LLM handles arbitrary, open-ended phrasings. Uses 1 credit per run.
Extracts a PDF’s text in your browser, then summarizes it with a hosted LLM. Uses 2 credits per run.
Extracts a PDF’s text in your browser, then answers a question about it with a hosted LLM. Uses 2 credits per run.
Generate a plain-English description of any image. ~100 MB model downloads on first use, then works offline.
Generate a richer, more accurate description of any image using BLIP-base. ~250 MB model downloads on first use, then works offline. Slower but more descriptive than the standard captioner.
Push-to-talk microphone capture. Click record, talk, click stop — the recording is yours to download or chain into another tool.
Generate complementary, analogous, triadic, tetradic, split-complementary, and monochromatic color schemes from a base hex color.
Convert between CSV and JSON formats. Auto-detects direction from input.
Convert a CSV with latitude/longitude columns into a GeoJSON FeatureCollection of points.
Convert a Google Earth KML file to GeoJSON. Preserves placemark names, descriptions, and geometry.
Convert a GeoJSON file to KML for Google Earth, Google My Maps, or any KML-compatible viewer.
Convert a GPS Exchange (GPX) track from Strava, Garmin, or any GPS device to GeoJSON.
Convert a GPX track from Strava, Garmin, or any GPS device to KML for Google Earth.
Convert a zipped Shapefile bundle (.shp + .dbf + .prj) to GeoJSON. Upload the .zip directly.
Convert between Shapefile, GeoJSON, KML, GPX, GML, GeoPackage, FlatGeobuf, TopoJSON, and CSV. Powered by GDAL/OGR.
Convert text between uppercase, lowercase, title, camelCase, snake_case, kebab-case, PascalCase, and CONSTANT_CASE.
Convert text into URL-friendly slugs. Strips diacritics, collapses whitespace, removes special characters.
Convert between JSON and YAML formats. Auto-detects direction from input.
Convert integers between decimal, binary, octal, and hexadecimal. Handles large numbers via BigInt.
Decode JWT header and payload. Does NOT verify the signature — for inspection only.
Beautify and format SQL queries with configurable keyword casing and indentation.
Beautify or minify XML documents. Uses Prettier for beautification.
Beautify or minify HTML with Prettier. Produces clean, consistently indented markup.
Beautify or minify CSS stylesheets using Prettier.
Parse a cron expression and show the next scheduled run times. Validates syntax and lists field values.
Decode QR codes from images. Returns the embedded data and code location.
Optimize SVG files using SVGO. Removes comments, editor metadata, and rounds decimal precision.
Evaluate arithmetic and scientific expressions locally — no server, no data sent.
Convert between length, mass, temperature, area, volume, speed, data, and time units.
Calculate percentages: percent of a value, percent change, or apply a percentage increase/decrease.
Calculate the difference between two dates, add/subtract time from a date, or find the day of the week.
Calculate compound interest with optional monthly contributions and a year-by-year breakdown.
Compare dollar-cost averaging vs. lump-sum investing using historical price data.
Convert audio files between MP3, WAV, OGG, FLAC, AAC, M4A, and Opus formats.
Convert video files between MP4, WebM, MKV, MOV, and AVI formats.
Strip the audio track from a video file. Outputs MP3, WAV, OGG, or M4A.
Trim an audio or video file to a specific start and end time (in seconds).
Reduce video file size using H.264 encoding. Higher CRF = smaller file, lower quality.
Convert a video clip to an animated GIF with palette optimization.
Convert subtitle files between SRT and WebVTT formats, with optional time shift.
Render subtitles permanently into a video (hardsub). Accepts SRT or WebVTT files.
Encrypt a file using a PGP public key. Outputs ASCII-armored or binary ciphertext.
Decrypt a PGP-encrypted file using your private key.
Create a detached PGP signature for any file using your private key.
Verify a detached PGP signature against the original file using a public key.
Compress one or more files into a ZIP archive.
Extract files from a ZIP archive. Optional glob filter to extract only matching files.
Inspect a ZIP archive: list entries, sizes, compression ratio, and timestamps.
Strip the background from any photo — runs entirely on your device.
Double the resolution of any image using AI super-resolution — runs on your device.
Extract text from handwritten notes and printed documents using a neural model — runs on your device.
Compare images and find near-duplicates using CLIP embeddings — runs on your device.
Classify text as positive or negative — runs entirely on your device.
Identify people, organizations, and locations in text — runs on your device.
Generate a concise summary of any long text — runs entirely on your device.
Translate between 100+ languages. Uses your browser's built-in translator when available (Chrome 131+), falling back to the M2M100 model.
Compute semantic embeddings and pairwise similarity for text files — runs on your device.
Compute Flesch, Gunning Fog, Coleman-Liau, and other readability scores for any text.
Count words, sentences, paragraphs, syllables, and estimate reading time.
Count tokens for GPT-4, GPT-3.5, and GPT-4o — useful for prompt design and cost estimation.
Compute edit distance and similarity ratio between two text files.
Normalize Unicode text to NFC, NFD, NFKC, or NFKD — removes invisible differences between identical-looking strings.
Encode or decode HTML entities and Unicode escape sequences.
Join multiple video files end-to-end into a single MP4.
Overlay text on a video at a chosen position, size, and color.
Speed up or slow down a video while keeping audio synced.
Add a watermark or logo image over a video at a fixed position.
Crossfade between two videos with a configurable transition effect.
Adjust brightness, contrast, saturation, gamma, and hue of a video.
Scale a video to new dimensions. Leave width or height blank to preserve the aspect ratio.
Remove the audio track from a video. Keeps the original video stream untouched (no re-encode).
Rotate a video 90°/180° or mirror it horizontally, vertically, or both.
Capture a single frame from a video at a given time as a PNG or JPEG image.
Swap a video's audio for a new audio file. Drop in a video and an audio file (any order).
Level audio or video to a broadcast/streaming loudness target (EBU R128, Spotify, Apple Music, and more).
Measure a clip's integrated loudness (LUFS), loudness range, and true peak (EBU R128). Returns a JSON report.
Compare two videos and report PSNR and SSIM. Drop the reference (original) first, then the distorted (encoded) version. Returns a JSON report.
Cut a rectangular region out of a video. Set the crop width, height, and top-left position.
Play a video backwards. Optionally reverse the audio too.
Make a video or audio file louder or quieter by a gain factor (1 = unchanged, 2 = double).
Repeat a video (or audio) clip back-to-back a number of times.
Remove all metadata (location, device, creation date, tags) from a video or audio file. No re-encode.
Add a fade-in from black at the start and/or a fade-out to black at the end (video and audio).
Darken the edges of a video for a classic vignette look. Adjust the strength.
Fit a video to a target aspect ratio (16:9, 9:16, 1:1, 4:3) with black bars — no cropping.
Lay a background music track under a video's existing audio. Drop a video and an audio file (any order).
Place two videos next to each other — horizontally or stacked vertically — into one clip.
Convert Excel workbooks (XLSX/XLS) to CSV. Export one sheet or all sheets as a ZIP.
Convert Excel workbooks (XLSX/XLS) to JSON. Supports single-sheet or all-sheets output.
Convert one or more CSV files into an Excel workbook. Each CSV becomes a sheet.
Convert JSON data to an Excel workbook. Supports arrays of objects, arrays of arrays, or multi-sheet format.
Inspect an Excel workbook: sheet names, row/column counts, and a data preview.
Merge multiple Excel workbooks into one. Each source sheet appears as a sheet in the output. Cell values are preserved; complex cell formatting (styles, conditional formatting, charts) is not.
Split an Excel workbook into one XLSX file per sheet, downloaded as a ZIP.
Convert an HTML file to a PDF document. Renders in the browser using html2canvas and jsPDF.
Generate barcode images from text or numbers. Supports Code 128, Code 39, EAN, UPC, ITF, and MSI formats.
Inspect every character in text — codepoint, UTF-8 bytes, JS escape, Unicode block, category — and flag invisibles, BOMs, RTL marks, and control characters.
Compute an HMAC signature of a file with your own secret key. Pairs with the hash tool — use HMAC when you also need authentication, not just integrity.
Generate a table of contents from markdown headings. Indented list with GitHub-style anchor links — drop it at the top of the document.
WCAG 2.1 contrast ratio between two colors. Pass/fail for AA and AAA at normal and large text sizes.
Estimate password entropy in bits, classify character mix, and flag passwords from a small common-passwords list. Nothing leaves your device.
Top characters, words, and n-grams by frequency. Useful for data inspection, cryptanalysis warm-ups, and quick text profiling.
Encode any file to Base32 text (RFC 4648) or decode Base32 back to bytes. Pairs with the base64 tool.
Compare two JSON files and produce a unified diff over their canonical (key-sorted) pretty form. Reorderings vanish; real changes stand out.
Encode text to Morse code (ITU table) or decode Morse back to text. Unrecognized characters are skipped silently.
Convert between arabic numbers (1–3999) and roman numerals. Decoding rejects non-canonical forms (e.g. IIII) so it doubles as a roman-numeral validator.
Identify a file by its magic bytes — independent of file extension or the browser-reported type. Useful for verifying uploads and spotting mislabeled files.
Generate the current RFC 6238 TOTP code from a base32 secret. Compatible with Google Authenticator, Authy, 1Password, and the rest. Nothing leaves your device.
Break a URL into its parts — protocol, host, port, path segments, query parameters, fragment. Handles relative URLs and preserves duplicate query keys.
Extract YAML (---), TOML (+++), or JSON frontmatter from a markdown file, returning the metadata as JSON and the body separately. Auto-detects the fence style.
Strip HTML tags and decode entities to produce readable plain text. Drops <script>, <style>, and comments entirely. Different from html-to-markdown — this returns prose, not formatted markdown.
Generate an RFC 4226 HOTP code from a base32 secret and an explicit counter. Counter-based sibling of TOTP — same algorithm, just no time slice.
Build a JWT (HS256 / HS384 / HS512) from a payload and a shared secret. Inverse of jwt-decoder — useful for testing APIs that authenticate with HMAC-signed tokens.
Verify a webhook signature against its payload using HMAC. Matches the Stripe / GitHub / Slack convention (HMAC-SHA256 with hex digest). Constant-time compare so timing attacks can't lift the signature.
Assemble a URL from JSON parts (protocol, hostname, port, path, searchParams, hash). Round-trips with url-parse — parse a URL, edit the JSON, build it back.
Drop duplicate rows from a CSV — either by full-row match or by specific key columns. Choose whether the first or last duplicate wins.
Join two CSVs on a key column. Inner, left, right, or outer join — colliding column names get a configurable suffix on the right side.
Generate or verify an HMAC-signed URL (S3-presign style). Combines url-parse + hmac — append a signature and optional expiry, verify by recomputing. Canonicalized so query-param order doesn't change the signature.
Generate N cryptographically random recovery codes for 2FA. Configurable alphabet (base32 / numeric / alphanumeric), code length, and group separator. Pairs with totp-code and hotp-code for enrollment.
Row-level diff between two CSVs. Identifies added, removed, and changed rows; for changed rows, reports the specific columns that differ. Pair a key column with this for stable identity across reorderings.
Sort the rows of a CSV by one or more columns — ascending or descending, as text or numbers.
Keep only the CSV rows where a column matches a condition — equals, contains, greater/less than, empty, and more.
Apply a unified diff (patch) to a text file. Verifies each hunk against the source and fails loudly on a mismatch. The counterpart to Text Diff.
Reads the text in an image, then scans it for prompt-injection phrases, invisible characters, confusable glyphs, and mixed scripts. Run it before feeding a screenshot or photo to an AI.
Redact emails, phone numbers, SSNs, cards and more from the visible text of an HTML file — every tag and attribute is left intact. The structure-aware counterpart to Text Redact.
Validate an OpenAPI spec (JSON or YAML) and get a Markdown report — result, spec stats, and an issues table — ready to paste into a CI log or pull-request comment.
Flatten nested JSON into a single-level object with dot-notation keys (a.b.c). Useful for CSV / spreadsheet export, search-index normalization, and env-var generation.
Inverse of json-flatten. Take a flat object with dot-notation keys (a.b.c) and rebuild the nested JSON structure. Round-trips with json-flatten.
Build an otpauth:// enrollment URI for Google Authenticator / 1Password / Authy / Bitwarden. Optionally renders a scannable QR alongside the URI — drop in secret + issuer + account, get the QR to point your phone at.
Verify an inbound webhook then re-sign the same payload under a different secret for replay against your local dev or staging server. The classic "tunnel a Stripe / GitHub webhook through to localhost" pattern, without a server roundtrip.
Build an identity bundle for a file: size, declared-vs-detected MIME, hashes (SHA-1 / SHA-256 / SHA-512), optional HMAC, and a hex head preview. "Is this file exactly what I think it is?" in one drop.
Validate a JSON document against a JSON Schema. Built on ajv — supports draft-07 by default, with all errors listed at full JSON-Pointer paths so you can pinpoint the failing field.
Detect Unicode homoglyph attacks. Flags non-Latin lookalikes (Cyrillic а, Greek ο, fullwidth Latin, mathematical alphanumeric) and tokens that mix scripts — exactly the patterns used in domain spoofing, fake usernames, and prompt-injection text.
Bulk-harvest frontmatter from a folder of markdown files into a single CSV. The header row is the union of every key seen; each row is one source file. Hugo / Astro / Jekyll content inventories in one drop.
Strict YAML parser with structural diagnostics. Different from json-yaml (which just converts) — this one catches duplicate keys, undefined anchors, and reports the precise line and column of any failure.
Walk a JSON document and emit a draft schema that describes it. Round-trips with json-schema-validate — infer a schema, then validate the same document and the result is `valid: true`.
Replace PII patterns in text — emails, phones, SSNs, credit cards (Luhn-validated), IPs, URLs, UUIDs, AWS access keys. Optional custom regex patterns. Text-only sibling of pdf-redact.
Pull every href / src / action from HTML, classified by element (a / img / script / link / iframe / video / audio / source / form). Optional base URL to resolve relative links. Regex-based so broken HTML still parses.
Pull embedded raster images out of a PDF and pack them into a ZIP. Different from pdf-to-image — that one renders whole pages; this one extracts the original photos and figures. Coverage varies by PDF: pdfjs preserves some image objects after rendering and not others. The ZIP always contains a _report.json listing what was found vs. extracted vs. skipped, so you can see which pages need a follow-up pass.
Per-column statistics for a CSV: inferred type, null count, distinct count, numeric range, length range, plus a row-width consistency check. The diagnostic you want before piping a CSV into anything that cares about schema.
Read a CSV and emit a JSON Schema that describes each row as an object. Per-column types are inferred from observed values, with min/max for numerics and format detection (date, date-time, email, uri, uuid) for strings. Pair with json-schema-validate to lock incoming CSVs to a known shape.
Extract values from JSON using JSONPath syntax. Supports the common subset: $.a.b, $.items[0], $.items[*].price, $..recursive, $["quoted key"]. Pairs with json-flatten for tabular pulls.
Deterministic local URL shortener. SHA-256 the URL, base32-encode the digest, truncate to a slug. No server, no database — same URL always produces the same slug, so two clients can mint matching short links without coordination. Optional QR PNG of the short URL.
Per-paragraph length and readability stats — word/sentence/char counts plus Flesch / Flesch-Kincaid / Gunning Fog for paragraphs above a minimum size. Flags the dense paragraphs so editors know where to focus.
Extract every declared favicon from an HTML document — <link rel="icon" / shortcut icon / apple-touch-icon / mask-icon>, <meta name="msapplication-TileImage">, and the /favicon.ico convention as a final fallback. Resolves to absolute URLs when a base URL is provided.
Apply a color-vision-deficiency transform to an image — protanopia, deuteranopia, tritanopia, and the full set including milder anomalous variants and achromatopsia. Useful for sanity-checking charts, UI screenshots, and brand palettes.
Encode any file to Bitcoin-style Base58 text, or decode Base58 back to bytes. Same alphabet used by Bitcoin / Solana / Stellar addresses — no 0, O, I, or l so the encoded text is unambiguous when read aloud. Closes the base32 / base64 / base58 trio.
Convert XML to JSON via fast-xml-parser. Attributes can be preserved (under @_attr keys), numeric / boolean text can be auto-typed, and repeated child elements get wrapped in arrays consistently. Inverse of json-to-xml.
Serialize JSON as XML via fast-xml-parser. Mirrors xml-to-json — keys prefixed with @_ become attributes, the special key #text becomes the element text content. Round-trip with xml-to-json on simple shapes.
Minify CSS with clean-css. Level 1 is safe (whitespace, comments, basic optimizations); level 2 does cross-selector and value-level optimizations (merge rules, shorthand collapse). Inverse direction of the existing css-formatter.
Minify HTML with html-minifier-terser — collapse whitespace, drop comments and redundant attributes, optionally minify inline CSS / JS. Inverse direction of the existing html-formatter.
Generate API keys in the Stripe / GitHub / OpenAI shape: a stable prefix (sk_live_, ghp_, …) plus a cryptographically random body. Configurable alphabet and length. Pairs with backup-codes and password-generator for adjacent secret-generation needs.
Generate Microsoft-style license keys — grouped uppercase alphanumeric with hyphens. Default 5×5 = 25 characters. Crockford-style alphabet (no 0/O/I/L/1) so keys are unambiguous when read aloud.
Mustache-style {{path.to.value}} substitution. Takes a JSON data file plus a template parameter, returns the rendered text with a report of which placeholders matched and which were missing. Pairs with csv-json to render one document per row.
Wrap binary into OpenPGP ASCII armor with a CRC-24 checksum (or unwrap an existing armored block back to bytes + headers). Doesn't encrypt or sign — that's pgp-encrypt / pgp-sign. This tool only handles the armoring envelope.
Verify and parse a signed cookie from Express (cookie-signature), Flask (itsdangerous), or Rails. Splits on the framework-specific separator, recomputes the HMAC under your secret, and reports valid + payload. Constant-time compare so timing can't lift the signature.
Single security verdict on a block of text. Combines text-confusable's homoglyph / mixed-script detection with checks for invisible-character density, control characters, BOM markers, and non-ASCII heaviness. Returns a verdict (clean / low / medium / high) with the contributing findings — the "should I trust this prompt-injection-shaped message" tool.
Validate an OpenAPI 3.0 or 3.1 document against the core spec rules. Catches the common shape errors (missing info, malformed paths, response status code typos) with clear paths and messages — without bundling the full 50 KB meta-schema. Set strict mode to also flag missing operationIds, descriptions, and other lints.
Lint a Node package.json for shape errors and npm-publish blockers. Catches invalid names, broken semver, mistyped dependency maps, and weird scripts blocks — without bundling the full npm schema. Strict mode also warns on missing description, repository, keywords, license.
Deep-merge two JSON documents with a conflict report. Pass two files (base, override); the second wins on collisions. Picks an array strategy (replace / concat / union) and emits the merged result alongside a list of every path where base and override disagreed. Pairs with json-diff (compare) for change-management workflows.
Mail-merge: take a CSV plus a mustache-style template, render one document per row, return a ZIP of the outputs. Filename pattern can reference row columns (e.g. "{{id}}-{{slug}}.md"). Composes csv-json + text-template + zip-create — the canonical "batch render data into N files" tool.
Scan a PDF for prompt-injection / homoglyph / invisible-character attacks. Extracts the text per page and runs text-suspicious over the whole document — and optionally each page individually. Useful when an LLM is about to ingest a PDF: catches Latin-spoofed phishing strings, zero-width prompt injections, and confusable-script substitutions before the model sees them.
Render a regex pattern as an SVG diagram. Each part of the pattern becomes a labeled box; groups nest, alternations stack vertically, repetitions show their quantifier underneath. Chains after regex-tester for the "what does this thing actually do?" hand-off.
Generate a regex pattern from a natural-language description. Heuristic engine covers ~30 common patterns (emails, URLs, phone numbers, dates, UUIDs, hex colors, etc.). Output chains into regex-tester and regex-visualize.
Generate a cron expression from a natural-language schedule. "Every Monday at 9am", "first of the month at midnight", "every 5 minutes", "weekdays at 8:30am". Chains after toolbelt rule scheduling.
Format a SQL query and break it down into plain-English clause-by-clause annotations. Identifies SELECT/FROM/JOIN/WHERE/GROUP BY/HAVING/ORDER BY/LIMIT, aggregates, joins, CTEs, and statement type.
Translate a regular expression into plain English. Walks the AST and emits a per-part breakdown — what each char-class, group, quantifier, assertion, and alternation actually means. Recognises ~30 common patterns by shape (emails, URLs, UUIDs, etc.). Chains after regex-tester and regex-visualize for the "what does this thing actually do?" hand-off.
Convert an image into ASCII (or Unicode block) art. Adjustable width and three character ramps (standard 70-char, simple 10-char, unicode blocks). Output is plain text — paste anywhere monospace renders.
Visualise where prompt-injection content hides in text — invisible characters, confusable lookalikes (Cyrillic а vs Latin a), mixed-script words, instruction-override phrases ("ignore previous instructions"), and chat-fence markers ([INST], <|im_start|>, System:). Returns positions, severity, and HTML with <mark> spans for direct display.
Extract structured fields from invoice / receipt PDFs — vendor, invoice number, date, total, subtotal, tax, and line items. Pure heuristic: regex over the extracted text, no LLM, runs in your browser. Output is JSON.
Hosted neural TTS — turns text into a natural-sounding MP3 in seconds. Chain it after Summarize, Translate, OCR, or Redact to get audio out of any tool that produces text. Uses 2 credits per run.
Hosted Llama Guard classifier — flags text containing violence, sexual content, hate speech, self-harm, harassment, and 9 other categories. Useful for moderators, parents, and anyone shipping user-generated content. Uses 1 credit per run.
Hosted M2M-100 — direct translation across 100+ language pairs without going through a chat LLM. Faster and cheaper than the Llama-class Translate for straight-shot translation. Uses 1 credit per run.
Hosted DeepSeek R1 reasoning model — reads your document and answers a specific question with explicit step-by-step reasoning. Suited to contracts, legal text, code review, and root-cause analysis from logs. Uses 3 credits per run.
Hosted LLM cleans up grammar, spelling, and punctuation while preserving your voice. Returns the corrected text only — no commentary, no explanation. Uses 1 credit per run.
Hosted fast LLM rewrites your text in a chosen tone — formal, casual, kid-friendly, concise, professional, or friendly. Useful for email drafts, customer replies, and turning a rough note into something you can send. Uses 1 credit per run.
Hosted Llama 4 Scout with a 10M-token context window — for textbooks, court transcripts, large contracts, and books that exceed the standard Ask-a-PDF tool. Extracts text in your browser then sends to the long-context model. Uses 2 credits per run.
Hosted Flux Schnell — turns a text prompt into a 1024×1024 JPEG in seconds. Pair it with Background Remove or Upscale to take the result further. Uses 1 credit per run.
Hosted Llama-4 Scout pulls structured JSON out of any text — receipts, emails, contracts, log lines. Describe the fields you want and get back a valid object. Major chain unlock: feeds anything downstream that needs structured input. Uses 1 credit per run.
Hosted IndicTrans2 — purpose-built English-to-Indic translation across Hindi, Bengali, Tamil, Telugu, Marathi, Gujarati, Punjabi, Malayalam, Kannada, Urdu, and Assamese. Higher fidelity for these languages than a general LLM. Uses 1 credit per run.
Load one or more CSV, JSON, or Excel files as tables, then run a SQL query across them. Each file becomes a table named after its filename. Join, aggregate, window-function, CTE — anything SQLite supports. Runs entirely in your browser; nothing uploads.
Example chains
One drop. Multi-step outcome. Each step's output becomes the next step's input.
"Before emailing a photo — strip the GPS data, blur faces, shrink it."
Strip metadata, blur faces, compress for sharing.
"When you have a pile of receipt photos and need one PDF for expenses."
Convert images to PDF, then merge them into a single document.
"When you have a scanned page and need the words out of it."
OCR a scanned document, then word-count the result.
"Before uploading a photo to a site — resize it, compress it, clean it."
Resize to web dimensions, compress for bandwidth, strip metadata.
"Before sharing a contract — black out the sensitive bits, then lock it."
Redact sensitive regions, encrypt with password, add page numbers.
"When a config file is minified and you need it readable."
Format JSON, convert to YAML, then copy as pretty text.
"After a meeting or interview when you want the gist, not the full text."
Transcribe a recording, then summarize the transcript.
"When a colleague sends a voice memo in a language you do not speak."
Transcribe non-English speech, translate, then summarize.
"Building accessible content in multiple languages."
Caption an image, then translate to your target locale.
"When someone hands you a list of addresses or coordinates and wants them on a map."
Turn a CSV of lat/lng rows into a KML file you can open in Google Earth.