Buddy Code
Create account ↗
← Buddy Code Tools

Tools for your workflow

Protected JSON APIs for scripts and AI agents. Execution is disabled by default; deployment enablement and an approved account are required.

Calling the API

Manage API keys. Send your key in the Authorization: Bearer header. Never put keys in URLs or browser code. Free allowance: 30 requests per minute per key, 1,000 per UTC day per key and account. Keys expire after 90 days.

401 means missing or invalid credentials; 429 means a rate limit or allowance was reached (see Retry-After); 503 means execution is disabled or unavailable. Request bodies are limited to 16 KiB with a 2-second read deadline and 32 levels of nesting. JSON text is limited to 12,000 characters and formatted responses to 512 KiB. Query strings are limited to 4 KiB. Vercel handlers have a 5-second maximum duration.

GET endpoints accept query parameters. POST endpoints accept application/json. Successful requests return HTTP 200; invalid inputs return HTTP 400 with an error string. There is no API billing or MCP server. The public API has no uptime guarantee.

Browser interfaces calculate locally. API calls send the submitted input to the server for processing. Operational metrics exclude request bodies, query values and result contents.

Numeric calculations use JavaScript floating-point arithmetic. Percentage change from zero and zero running pace are undefined. Unit IDs must belong to the same category. Dates use IANA time zones and explicit daylight-saving disambiguation.

Docker build context inspector

Explain missing or excluded Docker COPY sources using a local folder, Dockerfile and ignore rules.

2,000 folder files; 5 MB ZIP / 100 entries / 10 MB expanded; 256 KB per config and 10 MB combined text. Limits use decimal bytes. At most 500 ignore rules, 100 COPY sources, 2 million report characters and 30 seconds. Empty directories and symlink targets are not represented. Variables, stages, ADD, heredocs, remote/named contexts and unsupported flags remain unassessed. No build, destination validation or daemon access.

Browser-only. No upload API or MCP endpoint is available for this tool.

Compose environment value explorer

Trace Docker Compose interpolation and service environment values through supplied files, shell fixtures and overrides locally.

2,000 folder files; 5 MB ZIP / 100 entries / 10 MB expanded; 256 KB per config or fixture / 10 MB combined file text, in decimal bytes. Up to 10 Compose and 10 interpolation env files, 100 services, 20 env_file entries per service, 1,000 variables per env file/fixture/service and 5,000 final rows. At most 2,000 expressions, 16 interpolation levels, 256,000 characters per expanded scalar, 2 million model/report characters and 30 seconds. Default .env uses the selected project directory. Automatic COMPOSE_FILE secondary discovery, includes, extends, profiles activation and full Compose null/reset merging remain unassessed. Image ENV stays unknown unless supplied. No shell, Docker execution or remote fetch.

Browser-only. No upload API or MCP endpoint is available for this tool.

npm workspace lockfile inspector

Explain how workspace dependency declarations map to supplied package-lock entries and identify missing or mismatched resolutions.

2,000 folder files; 5 MB ZIP / 100 entries / 10 MB expanded; 256 KB per manifest, 6 MB per lockfile / 10 MB combined text, in decimal bytes. Up to 100 manifests, 100 workspace patterns, 20,000 lock entries, 5,000 declarations, 16 link hops, 2 million report characters and 30 seconds. Missing manifests, unsupported protocols and root overrides remain explicit gaps. Optional absence does not prove install applicability. No registry lookup, node_modules inspection, install, lock rewriting or peer/override solver.

Browser-only. No upload API or MCP endpoint is available for this tool.

Avro migration replay

Replay sample records from a writer schema into a reader schema and inspect defaults, aliases, promotions and failures locally.

128 KiB per schema, 1 MiB samples, 100 values, depth 48, 1,500 schema nodes, 200,000 steps, 2 MiB report and a 15-second worker deadline. Avro JSON union tags and byte strings are required; longs use a decimal-string extension for lossless JSON. Logical types use underlying values; decimal annotations must agree. No binary/OCF codec test, Kafka connection, registry lookup or runtime compatibility certification.

Browser-only. No upload API or MCP endpoint is available for this tool.

TypeScript configuration provenance explorer

Trace effective TypeScript settings back through inherited configuration files, with source locations and override history.

100 JSON/JSONC files, 256 KB per file / 2 MB combined, 5 MB ZIP, depth 32, 256 inheritance applications, two-million-character report and a 30-second worker deadline. Case-sensitive supplied filesystem only; missing parents or invalid settings make results partial. Only explicit compiler settings are listed; implied flags are not expanded. Files/include/exclude are selectors, not matched source files. No package installation, remote fetch, source compilation or plugin execution.

Browser-only. No upload API or MCP endpoint is available for this tool.

DOCX numbering diagnostics

Trace a Word paragraph’s list numbering through styles, numbering definitions and level overrides without uploading the document.

20 MiB DOCX, 100 ZIP entries / 50 MiB expanded / 200:1 expansion, 8 MiB selected XML, 100,000 elements / depth 40 per part, 2,000 paragraphs, 1,000 styles/instances/abstract definitions each, 32-link chains, eight-million-character report and a 30-second worker deadline. UTF-8 main document body/tables only; text previews stop at 300 characters. No final list labels, Word rendering, repair, table-style rules, tracked-change decisions or section restart simulation. External resources and embedded code are never loaded.

Browser-only. No upload API or MCP endpoint is available for this tool.

Random bad joke

Find a terrible joke for your next stand-up, or browse the jokes and puns curated by Buddy Code's Director.

A finite curated collection, rather than newly generated jokes. Selection history stays in memory for this page visit; reloading starts a new cycle. A laugh is never guaranteed. Clipboard copying requires browser permission; the text can also be selected manually.

Browser-only. No upload API or MCP endpoint is available for this tool.

Keep awake

Keep your screen on while this page stays visible, with timed sessions, a clock and optional break reminders.

Requires a supported browser and HTTPS or localhost. Duration 1–1,440 minutes, a local end time within the next day, or no deadline. Keep the page visible; hidden tabs, minimized windows, power saving and system policy can release or refuse a lock. No background or closed-lid guarantee. Compact windows cannot stay on top automatically. Reminders can be delayed by browser suspension; the clock and session deadlines use device time.

Browser-only. No upload API or MCP endpoint is available for this tool.

JUnit report comparison

Compare two local test reports to find new and resolved failures, ambiguous identities and duration changes.

5 MB UTF-8 import / 5 million characters per report; 10,000 cases, 100,000 elements and 40 XML levels. DTDs/entities are rejected. Logs/properties are omitted and failure text is capped at 1,000 characters. No inferred renames, retries or parameter equivalence. 12-million-character JSON report and 30-second deadline. Exports can contain private test details.

Browser-only. No upload API or MCP endpoint is available for this tool.

OCI image archive inspector

Inspect local OCI and Docker-save archives, layer changes and the final path inventory without installing Docker.

128 MiB input, 256 MiB expanded outer TAR, 128 MiB per layer, 512 MiB total layer expansion, 100 layers and 50,000 entries. Plain TAR/gzip only; no zstd, sparse TAR, external blobs or non-SHA-256 descriptors. Links/devices are metadata, not emulated. Replaced does not mean content changed. Hidden payload bytes are not reclaimable disk space. 20-million-character report and 30-second worker deadline. Digest checks do not prove publisher trust.

Browser-only. No upload API or MCP endpoint is available for this tool.

ABNF grammar test bench

Run reusable pass/fail sample suites against an ABNF grammar, with failure offsets and successful rule spans.

50,000 grammar characters, 500 definitions, nesting 30, explicit repeat bounds 256, 5,000 productions. Up to 50 samples / 2,048 code points each / 20,000 characters total; 100,000 states per sample, five million operations per batch and 30 seconds. Prose values need explicit replacement rules. Input is Unicode code points, not encoded bytes. LF/CRLF and indented definitions are accepted. No protocol conformance certification or remote grammar loading.

Browser-only. No upload API or MCP endpoint is available for this tool.

Local EML email inspector

Open saved email locally, inspect headers and plain text, and download selected attachments.

10 MiB input and decoded attachment budget, 500 headers, 50 attachments, one million body characters, MIME depth 20 and a 15-second worker deadline. No mailbox connection, sending, remote images, attachment execution or authenticity verdict.

Browser-only. No upload API or MCP endpoint is available for this tool.

Translation-file workbench

Edit Gettext PO translations and find missing, fuzzy or mismatched placeholders before export.

200,000 characters, 500 KB import, 500 entries including header, six plural forms and 15-second parsing deadline. UTF-8 only; obsolete #~ entries and nonstandard escapes are rejected. Formulas are not evaluated. Warnings are not a format compiler or linguistic-quality guarantee.

Browser-only. No upload API or MCP endpoint is available for this tool.

MusicXML score viewer

Render a local MusicXML score, select visible parts, change notation zoom and print or export pages.

500 KB import, 500,000 characters, eight parts, 100 measures per part, 2,000 notes/rests, 20,000 XML elements, 20 output pages / 40 megapixels / 20 MB. No MXL, DTD, external resources, playback or transcription. Layout overrides are ignored. Checks surround a synchronous renderer; cancellation can be delayed during layout. Review engraving before use.

Browser-only. No upload API or MCP endpoint is available for this tool.

Critical-path project planner

Calculate project duration, critical tasks and slack, then compare the effect of extending a task.

200 tasks, 100,000 input characters, unique task IDs up to 80 characters and durations 0–1 million units; extra duration up to one million. Cycles and missing dependencies fail. Finish-to-start dependencies and unlimited parallel resources; no calendars, staffing optimization or resource levelling.

Browser-only. No upload API or MCP endpoint is available for this tool.

Paper box-net generator

Generate a rectangular tray and optional lid, preview their assembly in 3D and download SVG/PDF cutting templates.

Thin card only; width/length 10–300 mm, depth 5–100 mm, tab at least 2 mm and at most depth/half-base dimensions. Lid clearance 0–5 mm per side. Lid tabs shorten to lid depth. Custom-size PDF pages require large enough paper; material thickness is not compensated. The assembly is illustrative, without material, collision or fit simulation. Physical fit and print-scale checks remain necessary.

Browser-only. No upload API or MCP endpoint is available for this tool.

State-machine tester

Step through events in a deterministic state machine and generate shortest transition test sequences.

100 states, 500 transitions, 100,000 JSON characters, depth 30, names up to 80 characters and 500 trace steps. Flat deterministic machines only. Unknown states, duplicate state/event pairs, actions and guards are rejected. No code execution or control of real applications; tests do not cover every possible path.

Browser-only. No upload API or MCP endpoint is available for this tool.

Local folder-size map

See a selected folder's size treemap, largest files and totals by extension without reading file contents.

1–10,000 files, 1,024-character relative paths, safe integer byte totals and 1 MB manifest import. Largest 60 non-empty files drawn separately; others grouped. Empty directories and browser-omitted files are absent. No deletion, content reading, disk-allocation measurement or whole-disk scan. Exported paths may be private.

Browser-only. No upload API or MCP endpoint is available for this tool.

Gamepad input tester

Inspect controller buttons, triggers and axes, and export a short observed resting-position report.

Compatible controller, browser support and HTTPS/localhost are required. Up to 32 axes / 64 buttons / 600 samples; at least 30 observations per completed sample. Mappings vary; physical input requires the user. No firmware changes, vibration, calibration, repair claims or identifier export.

Browser-only. No upload API or MCP endpoint is available for this tool.

Prisma schema visualizer

Turn a Prisma schema into draggable UML and entity relationship diagrams with arranged SVG, reloadable layout JSON and Mermaid exports.

Single-file Prisma 7 syntax; 250,000 characters / 1 MB import, 150 models and enums combined, 200 fields or enum values each, 5,000 total and 750 relationships. Parsing and automatic layout each stop after 15 seconds. Layout JSON imports are capped at 1 MB, depth 30 and coordinates ±100,000; restores must match the current diagram and view. SVG includes the entire arrangement; Mermaid does not retain manual positions. Views, composite types, ignored models/fields and Unsupported types are rejected. Logical associations, not database introspection: implicit junction tables are not drawn; indexes, referential actions, methods and inheritance are not shown. Mapped names and composite keys are in the model summary/JSON; enum values appear in UML and the summary. No generator, config file or migration is executed.

Browser-only. No upload API or MCP endpoint is available for this tool.

SQL schema diagrammer

Turn SQL table definitions into a diagram of tables, keys and declared relationships.

50,000 characters, 30 tables, 50 columns per table, 100 relationships. Simple identifiers and types only; comments, defaults, checks and dialect-specific clauses are rejected. Edges are schematic and do not infer cardinality. No connection or SQL execution.

Browser-only. No upload API or MCP endpoint is available for this tool.

Poster and pattern tiler

Print one large image or PDF page across overlapping A4 or Letter sheets with trim marks and an assembly map.

20 MB source, 200 input PDF pages, 100 output artwork sheets and 50 MB output. PNG/JPEG or one unrotated PDF page. Target width 10–3,000 mm, height up to 6,000 mm. Print at Actual size/100%; test printer alignment. Paper and ink costs remain.

Browser-only. No upload API or MCP endpoint is available for this tool.

Protocol Buffers message workbench

Decode binary Protocol Buffers messages or encode validated JSON with a supplied schema.

100,000 schema characters, 20 supplied imports/200,000 combined characters, 100 KB message and 1 million output characters. Use decimal strings for 64-bit integers. Unknown binary fields are omitted from readable output. No fetched imports, gRPC, account or network connection.

Browser-only. No upload API or MCP endpoint is available for this tool.

Colour-vision simulation preview

Compare a screenshot under named colour-vision simulations and export labelled PNG images.

JPEG/PNG/WebP up to 20 MB and 16 megapixels. Simulations approximate selected colour-vision deficiencies; they do not represent every viewer or certify accessibility. Alpha is preserved; metadata is discarded.

Browser-only. No upload API or MCP endpoint is available for this tool.

WebAssembly module inspector

Inspect imports, exports, section sizes and memory declarations, and export readable WAT without running the supplied module.

2 MB input, 1,000 sections, 4 million WAT characters and 15 seconds. Unsupported WebAssembly proposals fail validation. WAT memory lines include declarations and references; this is not a security audit.

Browser-only. No upload API or MCP endpoint is available for this tool.

FIR audio-filter designer

Design a low-pass or high-pass FIR filter, inspect frequency response and export coefficients.

8–192 kHz sample rate, cutoff below Nyquist, 3–1,001 odd taps. Finite transition width and ripple remain. No audio playback, microphone or file processing.

Browser-only. No upload API or MCP endpoint is available for this tool.

DC resistor-network solver

Calculate node voltages, branch currents and power for ideal resistors and DC sources.

100 branches, 40 non-ground nodes; resistors 0.001 Ω–1 GΩ, sources ±1 million units. Floating, conflicting and ill-conditioned circuits fail. Ideal DC only; no AC, hardware connection or component-safety assessment.

Browser-only. No upload API or MCP endpoint is available for this tool.

Rehearsal teleprompter

Rehearse a scrolling script with cue markers, mirror mode and estimated reading time.

100,000 characters and 60–300 words per minute. Timing excludes pauses and cue labels; scrolling is approximate and depends on layout. Hidden tabs or window blur pause scrolling. No camera, microphone, account or recording.

Browser-only. No upload API or MCP endpoint is available for this tool.

OpenAPI change checker

Compare two OpenAPI 3.1 JSON specifications and flag potentially breaking changes and unsupported cases.

JSON only; 2 million characters per document, 1,000 combined paths and 2,000 findings. Local references only. A finite rule set cannot prove compatibility; unsupported schemas are marked unknown.

Browser-only. No upload API or MCP endpoint is available for this tool.

Local application-log explorer

Map JSONL log fields, filter a chronological timeline and inspect repeated error messages without uploading logs.

5 million characters and 10,000 lines; timestamp values must parse as dates. No live streaming, nested field paths or automatic redaction. Exported logs can contain sensitive data.

Browser-only. No upload API or MCP endpoint is available for this tool.

Font preview & glyph checker

Preview a local TTF or OTF font, check sample code-point coverage and export an SVG specimen.

10 MiB TTF/OTF and 500 sample characters. Coverage is not a guarantee of shaping or language support. Specimens may clip above 20,000 units wide. Font licensing remains with the supplied file.

Browser-only. No upload API or MCP endpoint is available for this tool.

Video frame extractor

Extract PNG or JPEG stills at selected timestamps from a local video and download a timestamp manifest.

100 MiB, finite duration up to one hour, 33 megapixel source and 20 frames. Browser codec support and seek accuracy vary. Two-minute job deadline; no frame-exact or transcoding guarantee.

Browser-only. No upload API or MCP endpoint is available for this tool.

Offline certificate inspector

Inspect the subject, issuer, names, validity dates and SHA-256 fingerprint of a local public certificate.

One certificate up to 1 MiB. Private keys are rejected. No signature, chain, trust-store or revocation verification; no network requests to issuers. Reference dates use midnight UTC.

Browser-only. No upload API or MCP endpoint is available for this tool.

Binary file/hex inspector

Browse local byte ranges, search hexadecimal sequences and decode numeric values with explicit byte order.

Non-empty files up to 50 MiB; 4,096-byte range display/export; 1–64-byte search and first 1,000 matches. Read-only; no execution or editing.

Browser-only. No upload API or MCP endpoint is available for this tool.

Seating-plan builder

Assign attendees to tables with capacities and together/apart rules, then adjust and print the plan.

80 unique names, 20 tables and 200 rules of each kind. Search stops after 100,000 states; budget exhaustion leaves feasibility unknown. No messages are sent to attendees.

Browser-only. No upload API or MCP endpoint is available for this tool.

Cutting-stock planner

Arrange one-dimensional cuts in finite stock lengths and inspect offcuts, saw kerf and unplaced pieces.

Up to 500 stock lengths and 500 required pieces. Positive lengths up to 1,000,000 units; kerf 0–1,000. Heuristic, not globally optimal. No sheet nesting or material-strength assessment.

Browser-only. No upload API or MCP endpoint is available for this tool.

File splitter and reassembler

Split a local file into numbered chunks and verify each checksum before reconstructing it from a manifest.

Non-empty files up to 100 MiB and 100 parts; integer chunk sizes 1–100 MiB. Checksums detect mismatches, not authenticity. No encryption, compression or confirmed download completion.

Browser-only. No upload API or MCP endpoint is available for this tool.

Webcam studio

Test your webcam, check lighting and frame rate, take photos and record video with optional microphone audio — all in one private browser workspace.

HTTPS and browser permission are required. Requested modes are preferences, not a supported-resolution certification. FPS and brightness depend on scene and browser conditions; no calibrated hardware quality, bandwidth or sound-pressure score is claimed. Microphone processing may affect levels. Photos follow Mirror; recordings retain the original feed. Maximum requested capture is 3840 × 2160 at 60 FPS; photos fit 3840 × 2160. Clips stop at two minutes and are discarded above 50 MB. One photo and one clip are retained in page memory; encoding can use additional memory. Hidden tabs stop capture. Recording formats and frame callbacks vary by browser.

Browser-only. No upload API or MCP endpoint is available for this tool.

Local SQL workbench

Query CSV and Parquet files, join local tables and export results with DuckDB in your browser.

30-second deadline including engine loading, 128 MB engine memory setting, 5,000 output rows and 2 million output characters. CSV types are inferred; CSV formula cells are escaped. No uploads or persistent database.

Browser-only. No upload API or MCP endpoint is available for this tool.

HAR performance viewer

Inspect local browser network logs for slow requests, timing phases and transferred bytes.

Unknown sizes remain unknown. SSL overlaps connection time; durations must not be summed into page-load time. URLs omit queries, fragments and credentials but paths may be sensitive.

Browser-only. No upload API or MCP endpoint is available for this tool.

Contact-card builder

Enter contact details or import a CSV and generate downloadable vCard contact files.

CSV up to 300,000 characters, 500 contacts and 500 characters per field. Full names occupy the given-name field; address fields, photos and deduplication are not supported.

Browser-only. No upload API or MCP endpoint is available for this tool.

MIDI file inspector

Inspect MIDI tracks, tempos, notes and sustain-pedal timing, then export structured JSON.

2 MB, 128 tracks, 100,000 events and 10,000 CC64 events. Review threshold 0–10,000 ms; the initial 50 ms is illustrative. SMPTE and format 2 are unsupported. Equal-tick events follow source track/event order; receiver behavior can differ. Default tempo 120 BPM; program numbers 1–128. No sustain extension of notes, half-pedalling, acoustic simulation or MIDI rewriting. Unmatched notes retain null ends and no final pedal release is invented.

Browser-only. No upload API or MCP endpoint is available for this tool.

Audio spectrogram viewer

Visualise a short audio recording as frequency energy over time and export a labelled image.

10 MB, 30 seconds, 1–8 channels, FFT sizes 256–2,048 and up to 600 frames. Browser-supported audio only; decoding may resample. Decode deadline 15 seconds; FFT worker deadline 30 seconds, both cancellable. Optional mono averaging can cancel opposite-polarity signals. Not calibrated sound pressure or a diagnostic tool.

Browser-only. No upload API or MCP endpoint is available for this tool.

STL model inspector

Rotate a local STL wireframe and inspect model dimensions and triangle counts.

STL has no encoded units; selection interprets coordinates. Preview samples at most 15,000 triangles. No watertightness, manifold or printability guarantee.

Browser-only. No upload API or MCP endpoint is available for this tool.

SVG path editor

Edit vector endpoints and control points, scale or move a path and export SVG with bounds.

Single path only; no full SVG markup, styles, layers or boolean operations. Arcs are approximated as cubic curves. Coordinates and transformation magnitude are bounded.

Browser-only. No upload API or MCP endpoint is available for this tool.

Keyboard event tester

Highlight pressed keys and inspect modifiers, repeats and a downloadable local keyboard test session.

Up to 1,000 events. Browser/OS shortcuts may never reach the page. Layout labels are illustrative; physical testing needs a person. Do not enter passwords. No background capture.

Browser-only. No upload API or MCP endpoint is available for this tool.

Local MongoDB-style workbench — CamaDB

Import JSON collections, browse documents, run supported CamaDB queries, preview edits and export JSON locally.

Workbenches support a documented subset of release operators, not full MongoDB compatibility. JSON depth 20, 20 pipeline stages and 30-second deadline. Identity is immutable; data is lost on reload.

Browser-only. No upload API or MCP endpoint is available for this tool.

PDF form filler

Fill existing PDF form fields and checkboxes, preview the result and download a missing-field report.

AcroForm only; no scanned forms, XFA, signatures or field creation. Latin font support; choice controls support supplied options. Existing signatures can be invalidated by editing. Required flags come from the PDF and are not a completeness guarantee.

Browser-only. No upload API or MCP endpoint is available for this tool.

Printable label sheets

Convert CSV records into printable PDF labels with adjustable dimensions, margins and overflow warnings.

Latin PDF font only. No mail-merge templates or printer calibration. Print at Actual size and test on plain paper; printer margins and scaling can affect alignment.

Browser-only. No upload API or MCP endpoint is available for this tool.

Image difference checker

Highlight changed pixels between two screenshots and measure the percentage changed.

Equal dimensions required. No alignment, perceptual similarity or semantic comparison. Compression, antialiasing and colour management can change pixels. Fully transparent RGB is ignored.

Browser-only. No upload API or MCP endpoint is available for this tool.

Barcode generator

Validate and render Code 128 and EAN-13 barcodes, then download SVG or PNG assets.

Code 128 supports printable ASCII only in this tool. Valid EAN checksums do not establish assigned product identifiers. Test final printed size and contrast with a scanner.

Browser-only. No upload API or MCP endpoint is available for this tool.

PDF watermarks & page numbers

Stamp review copies and number selected PDF pages with configurable placement and opacity.

Not redaction or copy protection. Rotated pages are rejected; normalize rotation first. Latin font only. Editing can invalidate digital signatures. Stamps may overlap existing content.

Browser-only. No upload API or MCP endpoint is available for this tool.

Sprite-sheet packer

Pack small graphics into an atlas PNG and download a frame-coordinate JSON index.

No rotation, trimming, extrusion, deduplication or optimal packing. Duplicate filenames are rejected. Animation and image metadata are omitted.

Browser-only. No upload API or MCP endpoint is available for this tool.

GPX route inspector

Inspect a route outline, distance and elevation, then download a simplified GPX without using a map service.

Simplification is spacing-based, not a maximum geometric-error guarantee. Export retains coordinates/elevation only, omitting timestamps, extensions and source metadata. Outline is approximate and may stretch across the antimeridian. No navigation or elevation correction.

Browser-only. No upload API or MCP endpoint is available for this tool.

Calendar conflict checker

Find overlapping ICS events and trace generated, excluded or overridden occurrences to their source calendar lines.

1–10 files / 2 MB combined upload and 2 million text characters; 2,000 definitions, 366 inclusive UTC dates, 50,000 expansion steps, 5,000 explanation rows, 5,000 busy occurrences and 10,000 conflicts. UIDs need 1–512 characters; EXDATE/RDATE values total at most 5,000 per series. Cancellable 15-second worker; unsupported/over-limit inputs fail without a partial report. Floating/all-day values use UTC; named zones require embedded VTIMEZONE. THISANDFUTURE and RDATE periods are rejected. Identical UID/start/end occurrences are deduplicated. No remote sync.

Browser-only. No upload API or MCP endpoint is available for this tool.

Tournament bracket maker

Seed entrants, handle byes and select winners in an exportable single-elimination bracket.

Single elimination only; no scores, double elimination, shared editing or saved tournaments. Printable SVG truncates long names while fixture JSON preserves them. Downloads capture the current state.

Browser-only. No upload API or MCP endpoint is available for this tool.

Guitar chord-diagram builder

Draw supplied guitar fingerings with custom tuning and export SVG or PNG diagrams.

Draws supplied fingerings without identifying or verifying chords. Six strings only, frets 0–24 within a five-fret span. Repeated fingers are separate dots, not barre lines.

Browser-only. No upload API or MCP endpoint is available for this tool.

Image contact-sheet maker

Create labelled thumbnail grids from photos and export PDF or JPEG sheets.

Thumbnails are resampled and JPEG is lossy. Transparency uses white; animation and source metadata are not retained. Labels are rasterised, not searchable PDF text.

Browser-only. No upload API or MCP endpoint is available for this tool.

Batch file renamer

Preview prefixes, numbering and literal replacements, then download renamed file copies in a ZIP.

No regex, recursive folder renaming or filesystem changes. ZIP stores files without compression. Portable filename restrictions may reject names accepted by your operating system.

Browser-only. No upload API or MCP endpoint is available for this tool.

Screenshot annotation

Add arrows, numbered markers and text to a screenshot, then export PNG privately in your browser.

No editable project file, redaction or automatic object detection. Text at an image edge can clip. Original metadata and animation are not retained.

Browser-only. No upload API or MCP endpoint is available for this tool.

ZIP creator & extractor

Bundle local files into a ZIP or inspect an archive and extract selected entries with explicit limits.

No encrypted, ZIP64, multipart, symlink or nested extraction. Non-ASCII paths require UTF-8 encoding. Unsafe or duplicate paths and oversized archives are rejected. File contents are not scanned for malware.

Browser-only. No upload API or MCP endpoint is available for this tool.

Subtitle timing fixer

Shift SRT or WebVTT subtitles and correct gradual timing drift, then export repaired timestamps.

No speech recognition, translation or media playback. Output timestamps must remain below 100 hours and end after start. Existing overlaps are preserved; unsupported or malformed timing lines are rejected.

Browser-only. No upload API or MCP endpoint is available for this tool.

Image palette extractor

Find representative image colours and copy HEX values or CSS custom properties.

Frequency sampling is approximate and can return similar colours. It does not identify semantic accents or guarantee contrast. Transparent images may produce no palette.

Browser-only. No upload API or MCP endpoint is available for this tool.

IPv4 subnet calculator

Convert CIDR prefixes and netmasks, calculate address ranges and check whether an IPv4 address belongs to a subnet.

IPv4 only. No network scanning, DNS lookup or reachability check. Usable counts do not account for provider reservations or routing policy.

Browser-only. No upload API or MCP endpoint is available for this tool.

Printable graph-paper generator

Generate A4 or US Letter graph, dotted or ruled paper as a printable PDF with custom spacing and colour.

No printer calibration, landscape layout or multi-page designs. Very light colours may not print clearly. Screen preview spacing is illustrative.

Browser-only. No upload API or MCP endpoint is available for this tool.

Screen pixel test

Show solid colours and a grid for manual monitor inspection, with optional fullscreen display.

No automatic hardware access, calibrated colour measurement, burn-in repair or flashing sequences. Browser fullscreen may be unavailable.

Browser-only. No upload API or MCP endpoint is available for this tool.

PDF splitter & page organiser

Organise PDF pages, inspect and reduce supported embedded images, and review bookmarks before a local export.

25 MiB input / 200 pages / 50 MiB export, including ZIP overhead; split input bytes times selected pages must fit. Cancellable 15-second worker operations. Up to 500 images, 500 bookmarks / 12 levels / 500-character titles. Select at most 25 images / 40 MP combined; 16 MP and 16,384 pixels per source side. JPEG quality 20–95, maximum output side 256–8,192. Only supported 8-bit DeviceRGB/DeviceGray JPEG or raw/Flate images are changed; masks, ICC/indexed/CMYK, decode arrays, alternate/external images and unsupported codecs/filter chains remain unchanged. Resource references are not painted occurrence counts; inline images are unlisted and shared-image edits affect all references. Text/vectors remain intact; colors can change and PDF overhead can still grow. Signed/certified/signature-field, encrypted and XFA inputs are rejected. Up to 300 ordinary fields flatten on page organisation. Bookmark views reset to Fit and actions are never copied. Page-copy exports omit document metadata/attachments; image-only optimization preserves other structures and is not sanitization.

Browser-only. No upload API or MCP endpoint is available for this tool.

Images to PDF

Turn photos and screenshots into a PDF, with ordering, page sizes and margins. Files stay on your device.

No OCR or searchable text. Animation becomes a still image and source metadata is removed. JPEG re-encoding is lossy.

Browser-only. No upload API or MCP endpoint is available for this tool.

QR code generator

Create QR codes for websites, text or Wi-Fi. Download PNG or SVG, with no account or redirect service.

Maximum 1,500 UTF-8 bytes. Wi-Fi support varies by scanner; WPA/WPA2, WEP and open networks are offered. Dense codes need larger print sizes.

Browser-only. No upload API or MCP endpoint is available for this tool.

Date & working-days calculator

Count days between dates or add and subtract days, with optional weekend exclusion.

Years 0001–9999. Add or subtract at most 100,000 days. No public holiday calendars or local business schedules.

Browser-only. No upload API or MCP endpoint is available for this tool.

Text comparison

Find added and removed words or lines, privately in your browser.

Plain text only; formatting and document files are not compared. Normalised mode changes displayed spacing. This is not a semantic comparison.

Browser-only. No upload API or MCP endpoint is available for this tool.

Image cropper & resizer

Crop, rotate and resize images to exact dimensions, then download individually or as a batch.

Same settings apply to every batch image. Metadata and animation are not retained. JPEG uses white behind transparency; JPEG and WebP use 90% quality.

Browser-only. No upload API or MCP endpoint is available for this tool.

Metronome

Keep time with tap tempo, accented beats and a clear visual pulse.

Requires Web Audio and a user gesture. Background operation is intentionally stopped; this is not a recording synchronisation clock.

Browser-only. No upload API or MCP endpoint is available for this tool.

CSV ↔ JSON converter

Convert CSV and flat JSON with delimiter controls, source-positioned CSV errors, previews and local downloads.

200,000 input characters, 800 KB file size, 10,000 rows and 100 columns. Headers must be unique and non-empty. At most 25 CSV issues are shown; invalid input produces no partial conversion. Output is bounded to 2 million characters. Nested JSON is unsupported; JavaScript number precision applies.

Browser-only. No upload API or MCP endpoint is available for this tool.

Interval timer

Set work, rest and warm-up periods, with rounds, sound cues and a reusable local preset.

Work 1–3,600 seconds, rest 0–3,600 seconds, warm-up 0–600 seconds and 1–100 rounds. Browser suspension can delay cues. Storage and sound may be unavailable.

Browser-only. No upload API or MCP endpoint is available for this tool.

Colour contrast checker

Check text and background colours against WCAG AA and AAA contrast thresholds.

No transparency, gradients, background images or whole-page audit. The displayed ratio is rounded; classification uses full precision.

Browser-only. No upload API or MCP endpoint is available for this tool.

Running pace calculator

Convert minutes per mile to minutes per kilometre, or the other way around.

Constant pace is an assumption, not a race prediction.

Request

curl 'https://www.buddycode.tech/api/tools/pace?minutes=8&seconds=0&unit=mi' -H 'Authorization: Bearer YOUR_API_KEY'

Query parameters

[
  {
    "name": "minutes",
    "in": "query",
    "required": true,
    "schema": {
      "type": "integer",
      "minimum": 0,
      "maximum": 999
    }
  },
  {
    "name": "seconds",
    "in": "query",
    "required": true,
    "schema": {
      "type": "integer",
      "minimum": 0,
      "maximum": 59
    }
  },
  {
    "name": "unit",
    "in": "query",
    "required": false,
    "schema": {
      "type": "string",
      "enum": [
        "mi",
        "km"
      ],
      "default": "mi"
    }
  }
]

Example response

{
  "secondsPerKm": 298.2581722739203,
  "secondsPerMile": 480.00000000000006,
  "converted": {
    "seconds": 298.2581722739203,
    "formatted": "4:58",
    "unit": "min/km"
  },
  "finishTimes": [
    {
      "distance": "5K",
      "seconds": 1491.2908613696015,
      "formatted": "24:51"
    },
    {
      "distance": "10K",
      "seconds": 2982.581722739203,
      "formatted": "49:43"
    },
    {
      "distance": "10 miles",
      "seconds": 4800,
      "formatted": "1:20:00"
    },
    {
      "distance": "Half marathon",
      "seconds": 6292.501789549034,
      "formatted": "1:44:53"
    },
    {
      "distance": "Marathon",
      "seconds": 12585.003579098067,
      "formatted": "3:29:45"
    },
    {
      "distance": "50K",
      "seconds": 14912.908613696016,
      "formatted": "4:08:33"
    }
  ]
}

PDF merger

Bring your PDFs together. Choose the order, merge, and download.

2–20 files, 50 MB combined and 1,000 pages. Encrypted PDFs are unsupported; signatures and document-level bookmarks are not preserved.

Browser-only. No upload API or MCP endpoint is available for this tool.

Image compressor

Resize an image manually or compare JPEG and WebP at the same dimensions against a target byte size.

20 MiB JPEG/PNG/WebP input with bounded signature/dimension checks before decode and post-decode verification; animated PNG/WebP and unsupported headers are rejected. Manual resizing up to 40 MP with output sides at most 8,192 pixels. Fixed-dimension comparison up to 16 MP / 8,192 pixels per side, target 100 bytes–20 MiB, ten attempts per codec, 64 MiB per encoded candidate and a cancellable 30-second deadline. Requires browser WebP/JPEG worker encoding support. File size can increase or remain above target. WebP preserves supported transparency; JPEG flattens it onto white. Original metadata is not retained; visual quality and browser encoding differ.

Browser-only. No upload API or MCP endpoint is available for this tool.

JSON formatter

Turn a wall of JSON into something you can read. Validate, format, and copy.

Up to 1 million characters. Duplicate keys retain the last value; large numbers may lose precision.

Request

curl 'https://www.buddycode.tech/api/tools/json' -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' --data '{"text":"{\"hello\":1}","indent":2}'

Request body schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 12000
    },
    "indent": {
      "type": "integer",
      "enum": [
        0,
        2,
        4
      ],
      "default": 2
    }
  },
  "required": [
    "text"
  ]
}

Example response

{
  "formatted": "{\n  \"hello\": 1\n}",
  "valid": true
}

Time zone planner

Find your shared moment, wherever everyone happens to be.

Up to 12 destinations. The weekday 09:00–17:00 indicator excludes holidays and personal schedules.

Request

curl 'https://www.buddycode.tech/api/tools/time-zones' -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' --data '{"local":"2026-09-14T14:00","zone":"Europe/London","zones":["America/New_York","Asia/Tokyo"],"disambiguation":"reject"}'

Request body schema

{
  "type": "object",
  "properties": {
    "local": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}$"
    },
    "zone": {
      "type": "string",
      "description": "Source IANA time zone"
    },
    "zones": {
      "type": "array",
      "minItems": 1,
      "maxItems": 12,
      "items": {
        "type": "string",
        "description": "Destination IANA time zone"
      }
    },
    "disambiguation": {
      "type": "string",
      "enum": [
        "reject",
        "earlier",
        "later"
      ],
      "default": "reject"
    }
  },
  "required": [
    "local",
    "zone",
    "zones"
  ]
}

Example response

{
  "instant": "2026-09-14T13:00:00Z",
  "source": "2026-09-14T14:00:00+01:00[Europe/London]",
  "times": [
    {
      "timeZone": "America/New_York",
      "date": "2026-09-14",
      "time": "09:00",
      "offset": "-04:00",
      "workingHours": true
    },
    {
      "timeZone": "Asia/Tokyo",
      "date": "2026-09-14",
      "time": "22:00",
      "offset": "+09:00",
      "workingHours": false
    }
  ]
}

Background noise test

Check microphone background noise before a call, compare changes and export a report. Audio stays on your device.

Not calibrated dB SPL or a hearing-safety assessment. Device processing, clipping and input changes can invalidate comparisons.

Browser-only. No upload API or MCP endpoint is available for this tool.

Guitar tuner

Tune your guitar online with chromatic pitch detection and eight tuning presets. Free, with microphone audio processed on your device.

Single notes from 55–1,200 Hz. Chords, background music and weak signals may not yield a reliable pitch.

Browser-only. No upload API or MCP endpoint is available for this tool.