OnlineFreeTools.org
  • Home
  • Image editing tools
    • Add Text Watermark to Photo — Local Browser Tool
    • Extract Colors from Image — Palette & Click Pick
    • Flip Image — Mirror Horizontally or Vertically
    • Add Border to Image — Color & Width Online
    • Image Compressor — Resize, Quality & Target Size Local
    • Crop & Resize Image — Local Aspect Presets
    • Photo EXIF Viewer & Remover — GPS, Camera & Local Strip
    • Image Format Converter — PNG JPEG WebP AVIF BMP GIF ICO SVG
    • Convert Image to Grayscale — Black & White Online
    • Merge Images — Combine Photos into One Collage
    • Image Optimizer — WebP, AVIF & MozJPEG Local
    • Overlay Images — Put a Logo on a Photo
    • Image to Base64 Converter — Encode & Decode Locally
    • Images to GIF — Make an Animated GIF Locally
    • Images to PDF — Combine Photos into One File
    • Images to PowerPoint — Photos to PPTX Slides
    • Images to Word — Build a DOCX from Photos
    • PDF Page to Image Sizes — Multi-Size Export Pack
    • PDF to JPG — Convert Pages to Images in Your Browser
  • Design tools
    • Generate Brand Color Scale — 50–950 Palette & CSS Tokens
    • Brand Style Guide — Generate a Modular Draft You Can Edit
    • Smart Website Color Scheme — Semantic CSS Tokens
    • WCAG Contrast Checker — AA/AAA Ratio Online
  • PDF tools
    • Compress PDF — Shrink File Size in Your Browser
    • Crop PDF — Trim Page Margins in Your Browser
    • Merge PDF — Combine Files in Your Browser
    • Organize PDF — Reorder or Remove Pages in Your Browser
    • Add Page Numbers to PDF — In Your Browser
    • PDF to Markdown — Extract Text for Notes in Your Browser
    • PDF Watermark — Stamp Text on Every Page in Your Browser
    • Protect PDF — Password-Encrypt in Your Browser
    • Rotate PDF — Fix Page Orientation in Your Browser
    • Split PDF — Extract Pages Locally
    • Unlock PDF — Remove Password You Already Know
  • Developer
    • Add WWW to DNS — A/CNAME, Apex Rules & Provider Guides
    • Archive Extractor Online — Open Compressed Files in Your Browser
    • Base64 Encode & Decode — Convert Text in Your Browser
    • Core Web Vitals Checker
    • CSV ↔ JSON Converter — Types, Delimiters & Local
    • Domain Lookup — Check DNS Records & Registration Online
    • File Hash Checker — Verify Digests in Your Browser
    • Hreflang Generator
    • HTML Entity Encoder & Decoder — Escape, Unescape & Local
    • IndexNow — Bing URL Submit, Key Check & Status Codes
    • What Is My IP Address — See Your Public IP (IPv4 or IPv6)
    • JSON Schema Validator — Draft-07 Paths & Local
    • JWT Decoder — Read Header & Payload Locally (No Verify)
    • Magnet Link Decoder — Parse Info Hash and Trackers Locally
    • Markdown ↔ HTML
    • Google SERP Preview
    • Meta Tag Generator
    • On-Page SEO Checker
    • Open Graph Preview
    • Random Password Generator — Create Passwords Locally
    • Robots.txt Generator
    • JSON-LD Schema Generator
    • XML Sitemap Generator
    • Compare Two Texts Online — Text Diff Checker
    • Time Zone Converter — Compare One Moment Worldwide
    • Unix Timestamp Converter — Epoch ↔ Readable Time
    • Unzip File Online — Extract ZIP Files in Your Browser
    • UTM Builder
    • UUID & ULID Generator — Create IDs in Your Browser
    • Check HTTP Response Headers
    • YAML ↔ JSON Converter — Types, Multi-doc & Local
  • Calculators
    • Acceleration Calculator — Change in Velocity
    • Age Calculator — Chronological Age from Birthdate
    • Aspect Ratio Calculator — How to Calculate and Scale Ratios
    • BMI Calculator — How to Calculate Body Mass Index
    • BMR & TDEE Calculator — How to Calculate Daily Calories
    • Body Fat Calculator — How to Estimate Body Fat Percentage
    • Break-Even Calculator — How to Calculate Break-Even Point
    • CAGR Calculator — How to Calculate Compound Annual Growth Rate
    • Circle Calculator — Area and Circumference
    • Compound Interest Calculator — How to Calculate Future Value
    • Concrete Calculator — How to Estimate Concrete Volume
    • Confidence Interval Calculator — How to Calculate a CI
    • Contribution Margin Calculator — Price Minus Variable Cost
    • Date Difference Calculator — Days and Weeks
    • Debt Payoff Calculator — Months to Clear a Balance
    • Density Calculator — Mass over Volume
    • Discount Calculator — How to Calculate Sale Price
    • EMI Calculator — How to Calculate Loan Payments
    • Exponent Calculator — How to Calculate Powers
    • GPA Calculator — How to Calculate Weighted GPA
    • Gradient Calculator — Multivariable ∇f (Partial Derivatives)
    • Gross Margin Calculator — How to Calculate Gross Margin
    • Heart Rate Zone Calculator
    • Ideal Weight Calculator — How to Estimate Ideal Body Weight
    • Inflation Calculator — Future Purchasing Power
    • IRR Calculator — Internal Rate of Return
    • Logarithm Calculator — How to Calculate Logs
    • Macro Calculator — Calories to Protein Carb Fat Grams
    • How to Calculate Marginal Revenue — MR Calculator (ΔTR / ΔQ)
    • Markup Calculator — How to Calculate Markup Percentage
    • Mean Calculator — Average of a Number List
    • Median and Mode Calculator
    • How to Calculate NPV — Net Present Value Calculator
    • Ohm’s Law Calculator — Resistance and Power
    • One-Rep Max Calculator (Epley)
    • P-Value Calculator — How to Calculate a P-Value
    • Pace Calculator — min/km and Speed
    • Paint Calculator — How to Estimate Paint Needed
    • Payback Period Calculator — Years to Recover Investment
    • Percentage Change Calculator — From Old Value to New
    • Permutation and Combination Calculator
    • Present Value Calculator — PV and FV Modes
    • Profit Margin Calculator — Net or Operating Margin
    • Pythagorean Theorem Calculator — How to Find a Missing Side
    • Quadratic Equation Solver — Roots and Discriminant
    • ROI Calculator — How to Calculate Return on Investment
    • Rule of 72 Calculator — Years to Double
    • Salary to Hourly Calculator — How to Convert Pay Rates
    • Sample Size Calculator — How to Estimate Required n
    • Scientific Notation Calculator — How to Convert Scientific Notation
    • Significant Figures Calculator — How to Count and Round Sig Figs
    • Slope Calculator — How to Calculate Slope Between Two Points
    • Standard Deviation Calculator — How to Calculate SD and Variance
    • Tile Calculator — How to Estimate Tile Quantity
    • Tip Calculator — Tip Amount and Split
    • Triangle Area Calculator
    • VAT / GST Calculator — Add or Extract Tax
    • Velocity Calculator — Distance over Time
    • Volume Calculator — Box and Sphere
    • Z-Score Calculator — How to Calculate a Standard Score
    • Square Feet to Square Meters — Area Converter for Homes & Renovation
    • Unit Converter — Length / Mass / Temperature / Area / Volume / Speed
  • where2use
  • Tool types
  • Dev Logs

Navigation

Home

Shipped S2’s five SEO tools (on-page-seo-checker, open-graph-preview, utm-builder, hreflang-generator, meta-tag-generator) with phase=all green. | Dev Logs

Back to Logs

Date: 2026-08-09 21:55 Summary: Shipped S2’s five SEO tools (on-page-seo-checker, open-graph-preview, utm-builder, hreflang-generator, meta-tag-generator) with phase=all green.

[question] 分步骤立项工具:on-page-seo-checker,open-graph-preview,utm-builder,hreflang-generator,meta-tag-generator;然后分步骤实现;

[try to solve] Completed five S2 tools via tool-creation / work-tasks, each through rounds 0b→1b→2→2b→3 and phase=all gates:

on-page-seo-checker

  • Worker API /api/tools/on-page-seo (fetch URL HTML; private-network block / timeout / 2MB cap); exports parseUrlOrThrow / isBlockedHostname for reuse.
  • Dual mode: paste HTML (DOMParser local audit) or fetch URL; checks title/description/H1/canonical/robots/OG/JSON-LD/mixed content/render-blocking; canonical self-ref uses finalUrl.
  • Fixed sample JSON-LD with unescaped </script> that truncated the inline script.
  • zh title: On-Page SEO Checker (localized); en: “On-Page SEO Checker — Find and fix page tag issues” (outcome-oriented, avoid param enum).

open-graph-preview

  • Worker API /api/tools/open-graph-preview (reuses onPageSeo helpers).
  • Dual mode: paste og/twitter tags or fetch URL; parse into Facebook / X / WhatsApp cards + missing-field table + og:image size/ratio.
  • Placed in the social module; removed “Open Graph preview” from social upcoming.

utm-builder

  • Pure client (localProcessing: true); form builds UTM links: auto scheme, merge params (same name replaces), encodeURIComponent, hash kept at end, param detail table + copy.
  • Placed in the growth module; removed “UTM builder” from growth upcoming.

hreflang-generator

  • Pure client; language-code + URL line list; validate BCP 47; bare URLs get https; three output tabs (<link> / HTTP Link header / sitemap xhtml:link); per-URL self-ref + optional x-default.
  • Two logic fixes: invalid lang errors lost under renderOutput → collect via pendingErrors; {lang} {url} with schemeless URL skipped the whole line → parse by language-code first.
  • Placed in the growth module; cleared growth upcoming (hreflang + UTM both shipped).

meta-tag-generator

  • Pure client; title/desc/canonical/robots(select)/OG → full head fragment; soft length hints (title 60 / desc 160), escapeHtml on all fields, schemeless canonical warned yellow, empty fields skipped, copy button.
  • Master title failed the param-enum gate (“Create title, description & OG tags”) → outcome “Generate complete page head tags”; synced 02/03 and zh/es/ja direction.
  • Placed in the onpage module (also added previously missing on-page-seo-checker); removed “Meta tag generator” from onpage upcoming.

Global wrap-up

  • merge:tools: 124 tools / 10 locales; per-tool keysets match (on-page 95 / og 76 / utm 75 / hreflang 53 / meta 67).
  • Fixed lint:seo inbound orphans: sitemap-xml-generator related → hreflang-generator, hreflang-generator related → utm-builder → 0 inbound warn.
  • build:site OK (sitemap 1470 URLs); esbuild compiled 5 pages + 2 Workers + index.ts; Node DOM mocks for sample auto-gen and key interactions.
  • README EN/ZH lists +5 entries; inventory §6 rows 78–80 marked shipped, added 81/82, shipped count 118→123, index 1–163, open P2 →~78.

[actions]

  • Added src/tools/onPageSeo.ts, src/tools/openGraphPreview.ts (Worker API + routes)
  • Added src/pages/onPageSeoCheckerPage.ts, openGraphPreviewPage.ts, utmBuilderPage.ts, hreflangGeneratorPage.ts, metaTagGeneratorPage.ts
  • Added 5× work-tasks/{slug}/00-03 (status i18n-done) and src/site/i18n/tools/{slug}/{10 locales}.ts
  • Added 5× src/site/tool-catalog.d/{slug}.json and public/icons/tools/{slug}.svg
  • Updated scripts/site/scenario-modules.mjs (onpage + on-page-seo-checker/meta-tag-generator; growth + utm/hreflang; social already had open-graph-preview)
  • Updated scripts/site/i18n-taxonomy.mjs (onpage/growth upcoming cleared of shipped items)
  • Updated README.md and docs/2026-08-08-tool-inventory-table.md
OnlineFreeTools.org · Learning project · Iterating
About·Privacy·Terms·Contact·GitHub