<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>FerrLens Changelog</title>
    <description>Every feature, fix, and improvement to FerrLens.</description>
    <link>https://ferrlens.com/changelog/</link>
    <atom:link href="https://ferrlens.com/changelog/rss.xml" rel="self" type="application/rss+xml" />
    <language>en-us</language>
    <item>
      <title>Guides and FAQs under the email, DNS and security header tools</title>
      <link>https://ferrlens.com/changelog/2026-10-06-ferrlens-tool-guides/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-10-06-ferrlens-tool-guides/</guid>
      <pubDate>Tue, 06 Oct 2026 06:00:00 GMT</pubDate>
      <description>Five tools now explain what they check, how to read the result and how to fix the usual problems, in English and French.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Security headers check can award A+ again</title>
      <link>https://ferrlens.com/changelog/2026-10-03-ferrlens-sec-headers-a-plus/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-10-03-ferrlens-sec-headers-a-plus/</guid>
      <pubDate>Sat, 03 Oct 2026 10:00:00 GMT</pubDate>
      <description>A fully hardened site now scores 100 and gets A+, instead of topping out at A.</description>
      <category>ferrlens</category>
      <category>fix</category>
    </item>
    <item>
      <title>SPF check finds the record on domains with many TXT records</title>
      <link>https://ferrlens.com/changelog/2026-09-25-ferrlens-spf-large-txt/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-09-25-ferrlens-spf-large-txt/</guid>
      <pubDate>Fri, 25 Sep 2026 09:00:00 GMT</pubDate>
      <description>The SPF / DKIM / DMARC tool no longer reports a missing SPF record when the domain's TXT answer is too large for UDP.</description>
      <category>ferrlens</category>
      <category>fix</category>
    </item>
    <item>
      <title>CT log search</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-ct-search/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-ct-search/</guid>
      <pubDate>Thu, 21 May 2026 07:20:00 GMT</pubDate>
      <description>Find every TLS certificate ever issued for a domain by querying the public Certificate Transparency logs (crt.sh): great for subdomain discovery and rogue-cert detection.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>CORS tester</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-cors-tester/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-cors-tester/</guid>
      <pubDate>Thu, 21 May 2026 07:15:00 GMT</pubDate>
      <description>Send a preflight + actual request from a configurable Origin and see exactly which CORS headers the server returns: with pass/fail diagnostics.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Mixed content scanner</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-mixed-content/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-mixed-content/</guid>
      <pubDate>Thu, 21 May 2026 07:10:00 GMT</pubDate>
      <description>Scan an HTTPS page for HTTP-only src / href / action / poster / data-src resources that modern browsers block.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>OG card preview</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-og-preview/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-og-preview/</guid>
      <pubDate>Thu, 21 May 2026 07:05:00 GMT</pubDate>
      <description>See how a URL renders as a Twitter card, LinkedIn share and Slack unfurl: side by side, with warnings for missing or oversized fields.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Meta tag inspector</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-meta-inspector/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-meta-inspector/</guid>
      <pubDate>Thu, 21 May 2026 07:00:00 GMT</pubDate>
      <description>Fetch any URL and see every meta + link tag grouped by namespace: standard, OpenGraph, Twitter, Facebook, http-equiv, link.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>ASCII / Unicode inspector</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-ascii-unicode/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-ascii-unicode/</guid>
      <pubDate>Thu, 21 May 2026 06:20:00 GMT</pubDate>
      <description>Codepoint-by-codepoint breakdown of any string: UTF-8 bytes, UTF-16 units, HTML entities, CSS escape and Unicode block.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Punycode converter</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-punycode/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-punycode/</guid>
      <pubDate>Thu, 21 May 2026 06:15:00 GMT</pubDate>
      <description>Internationalised domain names (IDN) to ASCII Punycode and back, using the browser's native URL parser.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>IP / CIDR calculator</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-ip-cidr/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-ip-cidr/</guid>
      <pubDate>Thu, 21 May 2026 06:10:00 GMT</pubDate>
      <description>IPv4 and IPv6 CIDR math: network, broadcast, usable host range, netmask, total hosts, and address classification.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>User-Agent parser</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-user-agent/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-user-agent/</guid>
      <pubDate>Thu, 21 May 2026 06:05:00 GMT</pubDate>
      <description>Break down any User-Agent string into browser, engine, OS, device and bot heuristics. No remote call.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>HTTP status lookup</title>
      <link>https://ferrlens.com/changelog/2026-05-21-ferrlens-http-status/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-21-ferrlens-http-status/</guid>
      <pubDate>Thu, 21 May 2026 06:00:00 GMT</pubDate>
      <description>Searchable dictionary of HTTP status codes: number, reason phrase, category and what each one actually means in practice.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Sitemap validator</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-sitemap/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-sitemap/</guid>
      <pubDate>Wed, 20 May 2026 06:25:00 GMT</pubDate>
      <description>Fetch a sitemap.xml or a sitemap index, validate the XML, list child sitemaps or sample the URLs with lastmod / changefreq / priority.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Robots.txt analyzer</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-robots/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-robots/</guid>
      <pubDate>Wed, 20 May 2026 06:20:00 GMT</pubDate>
      <description>Fetch and parse a domain's robots.txt, simulate a crawl decision for any User-Agent + path, list every declared sitemap.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Security headers grader</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-sec-headers/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-sec-headers/</guid>
      <pubDate>Wed, 20 May 2026 06:15:00 GMT</pubDate>
      <description>Score any URL on CSP, HSTS, X-Frame, X-Content-Type, Referrer-Policy, Permissions-Policy, COOP and CORP. A+ to F grade out of 90 points.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>HTTP header inspector</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-http-headers/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-http-headers/</guid>
      <pubDate>Wed, 20 May 2026 06:10:00 GMT</pubDate>
      <description>Fetch any URL, see every response header, the full redirect chain, and the time it took. Like curl -ILv but rendered nicely.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Reverse DNS</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-reverse-dns/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-reverse-dns/</guid>
      <pubDate>Wed, 20 May 2026 06:05:00 GMT</pubDate>
      <description>IP address (v4 or v6) → PTR hostname lookup. Useful for tracing the rDNS of a mail server or checking that your IP resolves to the hostname you think it does.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>DNS lookup</title>
      <link>https://ferrlens.com/changelog/2026-05-20-ferrlens-dns-lookup/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-20-ferrlens-dns-lookup/</guid>
      <pubDate>Wed, 20 May 2026 06:00:00 GMT</pubDate>
      <description>A, AAAA, MX, TXT, NS, SOA, SRV in one shot, queried in parallel against Cloudflare's public resolvers.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens: Diff tool is live</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-diff-tool/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-diff-tool/</guid>
      <pubDate>Tue, 19 May 2026 22:00:00 GMT</pubDate>
      <description>Paste two blobs, get a side-by-side or unified diff with inline character highlights. Whitespace and case toggles. Fully client-side: the URL fragment encodes both inputs so you can share without uploading anything.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens: Dates now render in your local timezone</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-localtime-and-sse-hook/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-localtime-and-sse-hook/</guid>
      <pubDate>Tue, 19 May 2026 19:00:00 GMT</pubDate>
      <description>Snapshot timestamps and scan-fetched-at on shared SEO pages used to render in the server's timezone. They now show in yours. Plus a reusable SSE hook so future streaming tools share the same pattern as the SEO checker.</description>
      <category>ferrlens</category>
      <category>fix</category>
    </item>
    <item>
      <title>Spam score: SpamAssassin-style heuristics</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-spam-score/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-spam-score/</guid>
      <pubDate>Tue, 19 May 2026 17:45:00 GMT</pubDate>
      <description>Drop a subject + body, get a 0-10 spam score with the exact rules that flagged each line. Runs entirely in your browser: your draft never leaves the page.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Email verifier (v0)</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-email-verify/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-email-verify/</guid>
      <pubDate>Tue, 19 May 2026 17:40:00 GMT</pubDate>
      <description>Syntax + MX record check + disposable-provider list + role-based local-part detection. Real SMTP probe comes later.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>DNSBL blacklist checker</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-blacklist/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-blacklist/</guid>
      <pubDate>Tue, 19 May 2026 17:35:00 GMT</pubDate>
      <description>Query an IP or domain against 30 major DNSBLs (Spamhaus, SpamCop, Barracuda, SORBS, UCEProtect, Mailspike, …) in parallel. Verdict in under a second.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>SPF / DKIM / DMARC inspector</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-spf-dmarc/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-spf-dmarc/</guid>
      <pubDate>Tue, 19 May 2026 17:30:00 GMT</pubDate>
      <description>Pull, parse and score a domain's email-authentication TXT records: SPF mechanisms, DMARC policy + reports, ~30 common DKIM selectors checked in parallel.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens disponible en français</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-french-localisation/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-french-localisation/</guid>
      <pubDate>Tue, 19 May 2026 16:30:00 GMT</pubDate>
      <description>38 nouvelles routes /fr/ (home, pricing, account, les 8 pages légales, le changelog et les 21 outils), avec un sélecteur EN/FR en haut de chaque page.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Compressed, opaque share links</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-compressed-share-links/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-compressed-share-links/</guid>
      <pubDate>Tue, 19 May 2026 16:00:00 GMT</pubDate>
      <description>Share links from any tool now embed state as a single lz-string-compressed JSON blob instead of plain key=value pairs: 30-70% shorter, no longer human-readable.</description>
      <category>ferrlens</category>
      <category>perf</category>
    </item>
    <item>
      <title>FerrLens: SEO checker is now live-streaming, and ~3× faster</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-live-seo-scan/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-live-seo-scan/</guid>
      <pubDate>Tue, 19 May 2026 16:00:00 GMT</pubDate>
      <description>The SEO checker no longer waits 20 s before showing anything. Core Web Vitals appear in ~3 s, then full Lighthouse scores fill in. Chromium is now pooled, K8s right-sized, perf flags fixed.</description>
      <category>ferrlens</category>
      <category>perf</category>
    </item>
    <item>
      <title>Text stats</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-text-stats/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-text-stats/</guid>
      <pubDate>Tue, 19 May 2026 14:20:00 GMT</pubDate>
      <description>Characters, words, lines, sentences, paragraphs, reading time and approximate LLM token count for any block of text.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Credit card / IBAN validator</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-luhn-iban/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-luhn-iban/</guid>
      <pubDate>Tue, 19 May 2026 14:18:00 GMT</pubDate>
      <description>Validate credit card numbers with the Luhn algorithm and issuer detection, or IBANs with a mod-97 check and per-country length validation.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>File hash</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-file-hash/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-file-hash/</guid>
      <pubDate>Tue, 19 May 2026 14:15:00 GMT</pubDate>
      <description>Drop a file, get its MD5, SHA-1, SHA-256 and SHA-512: computed locally, the file never leaves your browser.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>JWT signature verify</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-jwt-signature-verify/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-jwt-signature-verify/</guid>
      <pubDate>Tue, 19 May 2026 14:12:00 GMT</pubDate>
      <description>Verify a JWT against a public key (PEM or JWK) through the native Web Crypto API: HS, RS, PS and ES families, all algorithms.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Number base converter</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-base-converter/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-base-converter/</guid>
      <pubDate>Tue, 19 May 2026 14:10:00 GMT</pubDate>
      <description>Convert between binary, octal, decimal and hex with BigInt arithmetic. No precision loss even on 128-bit numbers.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Slugify</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-slugify/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-slugify/</guid>
      <pubDate>Tue, 19 May 2026 14:08:00 GMT</pubDate>
      <description>Turn any string (accented, punctuated, multi-word) into a clean URL slug. Configurable separator, max length, and case.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Case converter</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-case-converter/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-case-converter/</guid>
      <pubDate>Tue, 19 May 2026 14:05:00 GMT</pubDate>
      <description>Convert between 11 case styles: camelCase, PascalCase, snake_case, SCREAMING_SNAKE, kebab-case, COBOL-CASE, dot.case, Title Case, Sentence case, lower, UPPER.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens: User menu with tier badge in the navbar</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-user-menu/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-user-menu/</guid>
      <pubDate>Tue, 19 May 2026 14:00:00 GMT</pubDate>
      <description>Signed-in users now see an avatar + tier pill in the FerrLens navbar instead of a plain Account link. The dropdown surfaces email, plan, Upgrade CTA and Sign out.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Password generator</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-password-generator/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-password-generator/</guid>
      <pubDate>Tue, 19 May 2026 13:42:00 GMT</pubDate>
      <description>Generate strong passwords with configurable charsets, a &quot;no look-alikes&quot; mode, an entropy bar and a crack-time estimate: backed by crypto.getRandomValues.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Color converter</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-color-converter/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-color-converter/</guid>
      <pubDate>Tue, 19 May 2026 13:41:00 GMT</pubDate>
      <description>HEX ↔ RGB ↔ HSL ↔ OKLCH with a live colour preview, alpha-aware.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Timestamp converter</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-timestamp-converter/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-timestamp-converter/</guid>
      <pubDate>Tue, 19 May 2026 13:40:00 GMT</pubDate>
      <description>Convert between Unix seconds, Unix milliseconds and ISO 8601, with a live view in any IANA timezone plus a relative reading (&quot;3 days ago&quot;).</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>HMAC generator</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-hmac-generator/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-hmac-generator/</guid>
      <pubDate>Tue, 19 May 2026 13:38:00 GMT</pubDate>
      <description>Generate HMAC-SHA1/256/384/512 of a message with a key in UTF-8, hex or Base64: through the native Web Crypto API, in your browser.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>URL / Base64 / Base64-URL / hex encoder</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-encoders/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-encoders/</guid>
      <pubDate>Tue, 19 May 2026 13:35:00 GMT</pubDate>
      <description>Encode and decode between text and URL-percent / Base64 / Base64-URL (RFC 4648 §5) / hex, with a single shared input that toggles direction in one click.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>Hash generator</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-hash-generator/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-hash-generator/</guid>
      <pubDate>Tue, 19 May 2026 13:30:00 GMT</pubDate>
      <description>MD5, SHA-1, SHA-256, SHA-384 and SHA-512 of any input. SHA-* through the native Web Crypto API, MD5 through a small pure-JS implementation. Your input never leaves the browser.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens: Sign in with your FerrLabs account</title>
      <link>https://ferrlens.com/changelog/2026-05-19-ferrlens-sign-in/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-19-ferrlens-sign-in/</guid>
      <pubDate>Tue, 19 May 2026 10:00:00 GMT</pubDate>
      <description>ferrlens.com now uses the central FerrLabs identity, so the same account works across every product site. Cross-domain auth handled server-side by the Astro SSR layer. No token in JavaScript.</description>
      <category>ferrlens</category>
      <category>new</category>
    </item>
    <item>
      <title>FerrLens: SEO checker runs Lighthouse locally</title>
      <link>https://ferrlens.com/changelog/2026-05-18-ferrlens-headless-lighthouse/</link>
      <guid isPermaLink="true">https://ferrlens.com/changelog/2026-05-18-ferrlens-headless-lighthouse/</guid>
      <pubDate>Mon, 18 May 2026 14:00:00 GMT</pubDate>
      <description>ferrlens.com now runs a real Lighthouse against a real Chromium in-cluster, instead of waiting for Google PageSpeed Insights. Faster, no quota, more signals.</description>
      <category>ferrlens</category>
      <category>perf</category>
    </item>
  </channel>
</rss>
