> Changelog

A short, honest list of what has shipped on tooldev.app, when, and why. The site is actively maintained by a single developer; this page is updated each time a meaningful batch of work lands on production. Full git history is available on request — write to privacy@tooldev.app.

v1.5 2026-05-20

Phase B — Consolidation & original-proof benchmarks.

  • Indexed surface consolidated from 32+ pages to a curated 13-page core: the image converter, six main format-pair landings (PNG↔WebP, JPG↔WebP, PNG↔JPG), two comparison guides (webp-vs-png, avif-vs-webp), About, Privacy, Tools, and this Changelog. Twenty doorway-pattern pages were taken out of sitemap.xml and given <meta robots="noindex, follow">; they remain reachable by URL.
  • AdSense loader stripped from all 20 noindexed pages so the Mediapartners-Google reviewer cannot evaluate them. GA4 stays everywhere for owner analytics.
  • All internal links from the 12 indexed pages to the 20 noindexed pages were removed — including the "Other Tools" header nav, footer-conversions for legacy formats, related-card grids, and the entire Image Tools section of the Tools hub.
  • Real-world benchmark sections added to all six main converter landing pages. Each shows a 5×3 (or 4-column for lossless paths) byte-exact table generated by driving this exact converter via headless Chromium on a fixed set of five self-generated sample images. Methodology blocks call out the honest caveats — double-lossy chains, transparency flattening, animated WebP first-frame-only, JPG q=100 quantization bloat.
  • Five CC0 self-generated sample images committed under src/assets/benchmarks/samples/ with SOURCES.md documenting the licensing position (rasterised font glyphs are not copyrightable per US Copyright Office Compendium § 906.4). SHA256 of each committed asset recorded for reproducibility.
  • Tooling added to the repository: scripts/generate_samples.py (Python + Pillow) regenerates the sample set; scripts/benchmark.mjs (Node + Puppeteer) regenerates the byte-exact benchmark numbers and side-by-side comparison PNGs. Puppeteer is the only npm devDependency; nothing ships to the browser.
  • Schema.org softwareVersion bumped to v1.5; dateModified normalised on every page touched by this release.
v1.4 2026-05-11

Phase A — AdSense content uplift.

  • Six main format-pair landing pages rewritten from scratch to 1,800–2,200 words of unique, technically-specific content each (PNG↔WebP, JPG↔WebP, PNG↔JPG).
  • About page expanded to ~1,666 words with full E-E-A-T signals (real author, real GitHub link, twenty-year retail-technology background, technical honesty about Canvas API limits).
  • Privacy Policy rewritten to ~1,000 words with concrete Canvas-API privacy disclosures, third-party processor list, and GDPR/CCPA data-rights walkthrough.
  • Sitewide trust block added to every page: client-side processing, no account, open about limits.
  • Tools hub page (/pages/tools) added with all formats grouped by category.
  • Initial render forced to English on every page for SEO/AdSense crawlers; localised UI activates only after consent and JS hydration.
  • JSON-LD upgraded: Person author schema on every tool/landing/guide, Organization with founder + contactPoint, FAQPage + HowTo coverage.
  • Honest download-button label (single file ≠ ZIP, button hidden when zero successful conversions); slider track contrast fix.
v1.0 2026-03

Initial public launch.

  • Image Converter MVP supporting seven formats: PNG, JPG, WebP, AVIF, GIF, BMP, ICO. Batch upload, ZIP download, drag-and-drop, all processing client-side via the Canvas API.
  • Six cyber-minimal themes: matrix, amber, cyan, purple, red, blue — all free, no gating, no account.
  • Nine UI languages: EN, UA, ES, PT, FR, DE, PL, ZH, JA. Preference stored in localStorage.
  • Six initial SEO landing pages for format pairs and two comparison guides; Schema.org markup on every page.
  • Google Analytics 4 (G-GXT10TCK06) with Consent Mode v2 (all four params denied by default in EEA regions).
  • Cloudflare Pages hosting from the main branch; Bot Fight Mode, Early Hints, and Crawler Hints enabled.

Last updated: 2026-05-20. The full commit-by-commit history lives in the project's git repository.