Changelog

Every change to Abect Dev Tools since launch — new tools, conversion bug fixes, SEO and performance work. Written by the person who shipped it, dated, and never edited after the fact. Last update: August 12, 2026.

25 releases · first entry April 8, 2026

2026

QR code generator — links, text, WiFi and contact cards, with logos and SVG export

A new Utilities section opens with four QR generators: links, plain text, WiFi networks, and vCard contact cards. Like every other free tool here, they run entirely in the browser — the URL, the network password and the contact details are never transmitted anywhere.

Text codes work with no network at all. A link code stores an address the phone still has to fetch; a text code stores the message itself, so it displays instantly on a machine in a basement plant room or a sign on a hiking trail. The generator is offline in the same sense — load the page, disconnect, keep generating.

Static, not dynamic. The destination is encoded directly into the pattern. There is no redirect service in the middle, so a printed code cannot stop working because a subscription lapsed or a company shut down. The trade-off is honest and stated on every page: static codes cannot count scans.

Escaping done properly. The WiFi format reserves five characters — \ ; , : and " — and most free generators pass them through unescaped, which silently truncates the password at the first one. The encoder here escapes all five in both the network name and the password. vCard output uses CRLF line endings and escapes commas and semicolons, so a job title like "Head of Sales, EMEA" imports intact instead of being split across fields.

Styling. Foreground and background colors, quiet-zone width, square, rounded or dot modules, and a logo in the center. Adding a logo raises error correction to level H automatically and punches the covered modules out rather than painting over them. The three corner finder patterns stay square in every style, because those are what a scanner locks onto first.

PNG and SVG. The renderer draws from the raw module matrix, which makes vector output free — the same geometry becomes an SVG that prints crisply at any size, from a business card to a banner. The live preview reports the QR version and byte usage, and warns before the payload grows dense enough to fail at print size.

Roman Popovych

Changelog page, category browsing on the home page, and lighter bundles

The full history now lives on a dedicated changelog page instead of being hidden behind a "show all" button — previously those entries existed only after a click, so none of it was readable without JavaScript. The home page keeps the three most recent entries as short summaries.

The home page was restructured around browsing rather than converting: the Popular section stays, and below it every one of the 49 free tools is now listed under its category — Images, SEO & Schema, and Text & Code — so any tool is one click from the front page.

Performance. Heavy libraries — the ZIP builder, the Markdown and YAML parsers, the chat renderer — now load only when a tool actually needs them, cutting roughly 20% off what every page downloads up front. React was split into its own chunk so it stays cached across deploys.

Structured data. Every schema — WebApplication, HowTo, FAQPage, BreadcrumbList, Organization — now renders inside <head> instead of the page body, and each one is escaped so its own text can never break out of the script tag. All 50 tool pages now carry a breadcrumb trail and the site publisher entity.

Routing and indexing. Sign-in and account pages answer with HTTP 200 and noindex instead of a 404 status — a password-reset link no longer lands on an error page. Private AI conversation URLs are excluded from crawling while the public AI assistant page stays indexable. llms.txt is generated from the tool registry at build time, so the machine-readable tool list can no longer drift out of sync.

Documentation. Added Terms of Service, updated the Privacy Policy to describe exactly what the AI assistant stores and where data is sent, and published a security contact at security.txt. The browser tools are unchanged — they still collect nothing.

Content. The three image compressor pages (JPG, PNG, WebP) were rewritten with quality-setting tables, generation-loss explanations and the actual Canvas pipeline — roughly double the previous depth.

Roman Popovych

HTML ↔ TSX — convert HTML to TypeScript React components and back

New tools: HTML to TSX and TSX to HTML. HTML→TSX converts any HTML snippet to a complete React.FC<Props> TypeScript component — renames attributes (class→className, for→htmlFor), converts inline styles to React style objects, and wraps the output in an interface Props {} scaffold. TSX→HTML strips TypeScript declarations (interfaces, type aliases, import statements, as-assertions) and extracts the JSX return body from a full component before applying the full JSX→HTML reverse transformation. Browser-based, no upload, no signup required.

Roman Popovych

Lora — AI assistant for JSON-LD schema markup and SEO, powered by DeepSeek

Generate valid Product JSON-LD schema markup, Article, FAQ, BreadcrumbList and more structured data from plain English descriptions. Multi-turn AI chat with skills — select a task or ask anything. Free plan: 100K tokens/month. No credit card required.

Roman Popovych

HTML→JSX & JSX→HTML — SVG fixes; JSON→XML root validation

HTML→JSX: SVG files from Figma or SVG Repo now convert correctly — <?xml...?> declaration stripped, xmlns:xlink removed, xml:spacexmlSpace, xlink:hrefhref, and all hyphenated SVG presentation attrs (fill-rule, stroke-width, clip-path, enable-background and 25 more) converted to camelCase. JSX→HTML: full reverse — camelCase SVG attrs restored to their hyphenated forms; <clipPath> element tag correctly preserved while clipPath= attribute is converted. JSON→XML: multi-key top-level objects now throw a clear error with a fix suggestion instead of silently producing invalid XML.

Roman Popovych

Text converter bug fixes across 7 tools; HEIC support in the WebP converter

Fixed conversion bugs across seven text tools. HTML→JSX: minlengthminLength, ondblclickonDoubleClick, self-closing void tags no longer get a doubled slash. JSX→HTML: JSX expression values now resolve ({0}"0", {false}→removed, {true}→bare attribute), minLengthminlength. HTML→Markdown: <s> and <del> now convert to ~~strikethrough~~. Markdown→HTML: single ~tilde~ no longer produces <del>. XML→JSON: CDATA sections parsed as text instead of empty objects. CSV→JSON: RFC-4180 multi-line quoted fields now handled correctly. JSON→XML: supports both @key and @attributes conventions for XML attributes.

WebP Converter now accepts HEIC and HEIF files (iPhone photos). Safari decodes HEIC natively with zero library overhead; Chrome and Firefox lazy-load a WebAssembly build of libheif only when a HEIC file is detected. The quality slider applies to HEIC conversion, and batch processing with ZIP download works the same as for all other formats.

Roman Popovych

JSX ↔ HTML Converter — accuracy improvements

Improved conversion accuracy in JSX to HTML and HTML to JSX. JSX→HTML now correctly unwraps <> and <React.Fragment> shorthand, converts {/* */} JSX comments to HTML comments, and handles CSS values with commas (e.g. rgba(), linear-gradient()) in inline style objects without breaking. HTML→JSX now produces correct camelCase for all multi-word React event names — onMouseEnter, onKeyDown, onTouchStart, and 30+ others that were previously only capitalizing the first letter.

Roman Popovych

HEIC Converter — iPhone photos to JPG and WebP

New tools: HEIC to JPG and HEIC to WebP — convert iPhone photos directly in the browser with no upload. Safari uses the native OS HEIC decoder (zero library cost); Chrome and Firefox lazy-load a WebAssembly build of libheif only when a HEIC file is detected, leaving all other pages unaffected. Batch conversion and ZIP download supported.

Roman Popovych

Schema Markup Generator — Product, Article, FAQ, Organization, Local Business, Breadcrumb

New tools: Product, Article, FAQ, Organization, Local Business, and Breadcrumb schema generators — each with live JSON-LD preview, Google Rich Results eligibility validation, missing field warnings, and a direct "Test in Google" link. Fields based on official Google documentation. No signup required.

Roman Popovych

About page — author profile, EEAT signals, and navigation update

New About page with full author profile, product principles, and contact section. Includes Person + WebSite JSON-LD structured data linking the creator's LinkedIn and GitHub profiles for EEAT signals. Desktop header now has Home and About navigation links; sidebar is now tool-focused only with a mobile accordion for the Tools section. Sitemap lastmod dates are now hardcoded per page so Vercel rebuilds don't reset all dates to the same value.

Roman Popovych

OG Image Generator — full SEO content launch

New tool: OG Image Generator — upload any image, crop it to 1200×630 px or 1:1, adjust JPEG quality with a live file-size preview, and get copy-ready Open Graph + Twitter/X meta tags in one place. Includes a live social card preview, drag/zoom/pinch canvas editor, and full SEO content: platform size comparison table, framework code examples for HTML, React, Next.js, Nuxt, and WordPress, 10 FAQ items, and HowTo + FAQPage JSON-LD schemas.

Roman Popovych

SEO & Content Deep Dive — Image Converters (Phase 2, complete)

Full SEO and content overhaul of all remaining 16 image converter pages. Every page now uses a 5-section structure: browser-based privacy explanation with code snippet, real-world use cases, a 7-row format comparison table, a "when to use" cheat-sheet, and a Canvas API technical breakdown. Each page has 10–12 unique FAQ items and a unique title/description angle targeting a specific pain point. No server uploads — all conversion happens locally in the browser.

Roman Popovych

SEO & Content Deep Dive — Image Converters (Phase 1)

Major content and SEO overhaul for four key image conversion tools: PNG to JPG, JPG to WebP, WebP to PNG, and GIF to JPG. Each page now features an expanded technical guide (6k+ characters), comprehensive FAQ (10+ questions), and detailed format comparison tables. Added deep technical explanations of the browser-based Canvas API rendering and localized privacy-first processing with copy-ready code examples.

Roman Popovych

Codebase refactor — Phase 1: shared UI Kit and data/ structure

Major internal refactor to standardize how tools are built across the codebase. Extracted duplicated per-page components into a shared UI Kit — DropZone, ImagePicker, Table, Buttons, CodeBox, ContentSection, PageHeader, ToolSection, RelatedTools, and Lightbox. Each tool page now follows a consistent data/ structure (helmet.js, jsonld.js, content.js, formats.js) that separates SEO metadata, structured data, and content from UI logic. Adds src/config/site.js as a single source for URL and OG image builders.

Roman Popovych

SEO overhaul — WebP Converter, Favicon Generator, Meta Tag Generator

Deep SEO overhaul of three core tool pages: WebP Converter, Favicon Generator, and Meta Tag Generator. Each page received a stronger H1 targeting the primary keyword, an expanded FAQ as a single source for both content and FAQPage JSON-LD, a new HowTo JSON-LD schema, format and size comparison tables, and implementation guides with copy-ready code blocks for React, Next.js, Vue/Nuxt, and WordPress.

Roman Popovych

Home page — SEO restructure

Full SEO overhaul of the home page: added Popular tools, What's new, How it works, Why browser-based, and Tool categories sections. FAQ expanded to 8 questions covering formats, batch processing, watermarks, and pricing. Meta description shortened to fit SERP. JSON-LD fixed to render in the document head. Semantic HTML improved: aria-label on sections, article elements for changelog cards, time elements with datetime for all dates.

Roman Popovych

Meta Tags Generator, and a proper 404 page

Generate complete SEO meta tags — title, description, canonical URL, robots directives, Open Graph, Twitter Card, and hreflang — with a live Google search snippet preview. Supports advanced settings: multiple hreflang entries, custom robots rules, and OG image configuration. Output is copy-ready HTML you paste directly into your page head.

Added a dedicated 404 page that handles unknown routes gracefully. The page is pre-rendered at build time and served with a proper HTTP 404 status for unmatched paths, which prevents soft 404 errors in Google Search Console.

Roman Popovych

Analytics — Google Tag Manager

Integrated Google Tag Manager for flexible event tracking without touching the codebase. Allows adding analytics, conversion tracking, and custom events through the GTM interface without a new deployment.

Roman Popovych

Image Compressor — JPG, PNG, WebP

Three dedicated image compressors with per-file quality sliders, batch processing, and a fullscreen lightbox preview of the compressed result before downloading. PNG compression is lossless — the browser re-encodes and strips metadata. JPG and WebP compression is lossy with adjustable quality from 1–100. All output available as individual files or a single ZIP archive.

Roman Popovych

Image Converter — 20 format pairs

Twenty format conversion pairs covering JPG, PNG, WebP, AVIF, GIF, BMP and TIFF. Each converter has a dedicated URL with unique content explaining when and why to use that specific conversion, a step-by-step how-to guide, related tool links, and a tailored FAQ. All conversion happens via the Canvas API with no uploads.

Roman Popovych

WebP Converter & Favicon Generator — batch + quality

Added batch processing to both tools: drop multiple files, process all at once, download as a ZIP archive. WebP Converter gained an adjustable quality slider (1–100). Favicon Generator added a live canvas preview of the generated favicon so you can see the result before downloading the full package.

Roman Popovych

Favicon Generator

Generates a complete favicon package from text, emoji or an uploaded image: PNG files at 16, 32, 180, 192 and 512 px; a binary favicon.ico with embedded 16, 32 and 48 px frames; site.webmanifest; and a docs.txt installation guide. The ICO file is assembled manually using TypedArrays — no server processing required.

Roman Popovych

Analytics, cookie consent, Search Console, prerendering and a UI pass

Prerendering. Enabled server-side prerendering for all tool pages at build time. Each page is rendered to static HTML with full meta tags, structured data and content — meaning Google receives a fully populated page on first crawl without executing JavaScript.

Privacy. Added a GDPR-compliant cookie consent banner that appears on first visit. It stores your choice in localStorage and blocks analytics scripts until consent is explicitly given.

Analytics. Integrated Microsoft Clarity for heatmap visualization and session recording, to identify how users interact with tool interfaces — drop zones, file tables, quality sliders — and guide UX improvements.

Search Console. Added Google Search Console domain verification, enabling monitoring of search performance, index coverage, Core Web Vitals field data, and crawl errors.

UI. Updated layout, typography and spacing across all pages. Refined sidebar navigation and improved responsive behaviour on smaller screens.

Roman Popovych

Launch — production domain

Moved to the production domain devtools.abect.com with Vercel deployment. Automatic builds on push to main, with prerendering and sitemap generation as part of the build pipeline.

Roman Popovych