OnlineFreeTools.org
  • Home
  • Tools
    Health & body →
    BMI Calculator — How to Calculate Body Mass IndexBMR & TDEE Calculator — How to Calculate Daily CaloriesBody Fat Calculator — How to Estimate Body Fat PercentageHeart Rate Zone CalculatorIdeal Weight Calculator — How to Estimate Ideal Body WeightMacro Calculator — Calories to Protein Carb Fat GramsOne-Rep Max Calculator (Epley)Pace Calculator — min/km and Speed
    Personal money →
    CAGR Calculator — How to Calculate Compound Annual Growth RateCompound Interest Calculator — How to Calculate Future ValueDebt Payoff Calculator — Months to Clear a BalanceDiscount Calculator — How to Calculate Sale PriceEMI Calculator — How to Calculate Loan PaymentsInflation Calculator — Future Purchasing PowerPercentage Change Calculator — From Old Value to NewPresent Value Calculator — PV and FV ModesRule of 72 Calculator — Years to DoubleSalary to Hourly Calculator — How to Convert Pay RatesTip Calculator — Tip Amount and SplitVAT / GST Calculator — Add or Extract Tax
    Business finance →
    Break-Even Calculator — How to Calculate Break-Even PointContribution Margin Calculator — Price Minus Variable CostGross Margin Calculator — How to Calculate Gross MarginIRR Calculator — Internal Rate of ReturnHow to Calculate Marginal Revenue — MR Calculator (ΔTR / ΔQ)Markup Calculator — How to Calculate Markup PercentageHow to Calculate NPV — Net Present Value CalculatorPayback Period Calculator — Years to Recover InvestmentProfit Margin Calculator — Net or Operating MarginROI Calculator — How to Calculate Return on Investment
    Math & stats →
    Confidence Interval Calculator — How to Calculate a CIExponent Calculator — How to Calculate PowersGPA Calculator — How to Calculate Weighted GPALogarithm Calculator — How to Calculate LogsMean Calculator — Average of a Number ListMedian and Mode CalculatorP-Value Calculator — How to Calculate a P-ValuePermutation and Combination CalculatorQuadratic Equation Solver — Roots and DiscriminantSample Size Calculator — How to Estimate Required nScientific Notation Calculator — How to Convert Scientific NotationSignificant Figures Calculator — How to Count and Round Sig FigsStandard Deviation Calculator — How to Calculate SD and VarianceZ-Score Calculator — How to Calculate a Standard Score
    Geometry & measure →
    Aspect Ratio Calculator — How to Calculate and Scale RatiosCircle Calculator — Area and CircumferenceGradient Calculator — Multivariable ∇f (Partial Derivatives)Pythagorean Theorem Calculator — How to Find a Missing SideSlope Calculator — How to Calculate Slope Between Two PointsTriangle Area CalculatorVolume Calculator — Box and SphereUnit Converter — Length / Mass / Temperature / Area / Volume / Speed
    Science & physics →
    Acceleration Calculator — Change in VelocityDensity Calculator — Mass over VolumeOhm’s Law Calculator — Resistance and PowerVelocity Calculator — Distance over TimeMeasuring Magnetic Fields — Field strength calculator
    Home & DIY →
    Concrete Calculator — How to Estimate Concrete VolumePaint Calculator — How to Estimate Paint NeededTile Calculator — How to Estimate Tile QuantitySquare Feet to Square Meters — Area Converter for Homes & Renovation
    Time & calendar →
    Age Calculator — Chronological Age from BirthdateDate Difference Calculator — Days and WeeksTime Zone Converter — Compare One Moment WorldwideUnix Timestamp Converter — Epoch ↔ Readable Time
    PDF & docs →
    Batch compress PDFs for emailCompress PDF — Shrink File Size in Your BrowserCrop PDF — Trim Page Margins in Your BrowserMerge PDF — Combine Files in Your BrowserOrganize PDF — Reorder or Remove Pages in Your BrowserAdd Page Numbers to PDF — In Your BrowserPDF Page to Image Sizes — Multi-Size Export PackPDF to JPG — Convert Pages to Images in Your BrowserPDF to Markdown — Extract Text for Notes in Your BrowserPDF Watermark — Stamp Text on Every Page in Your BrowserProtect PDF — Password-Encrypt in Your BrowserRotate PDF — Fix Page Orientation in Your BrowserSplit PDF — Extract Pages LocallyUnlock PDF — Remove Password You Already Know
    Image & media →
    Add Text Watermark to Photo — Local Browser ToolAmazon main image sizeApple-touch-icon 180×180Batch watermark product photosBulk compress PNG imagesBulk compress product photos (JPEG, PNG, WebP)Bulk convert images to JPGBulk convert images to PNGBulk convert images to WebPExtract Colors from Image — Palette & Click PickFlip Image — Mirror Horizontally or VerticallyAdd Border to Image — Color & Width OnlineImage Compressor — Resize, Quality & Target Size LocalCrop & Resize Image — Local Aspect PresetsPhoto EXIF Viewer & Remover — GPS, Camera & Local StripImage Format Converter — PNG JPEG WebP AVIF BMP GIF ICO SVGConvert Image to Grayscale — Black & White OnlineMerge Images — Combine Photos into One CollageImage Optimizer — WebP, AVIF & MozJPEG LocalOverlay Images — Put a Logo on a PhotoImage to Base64 Converter — Encode & Decode LocallyImages to GIF — Make an Animated GIF LocallyImages to PDF — Combine Photos into One FileImages to PowerPoint — Photos to PPTX SlidesImages to Word — Build a DOCX from PhotosInstagram post sizeInstagram story sizeiOS app icon sizeiPhone 6.9 screenshot sizeLinkedIn banner sizeOpen Graph image sizeSVG optimizerYouTube thumbnail size
    Design & brand →
    Generate Brand Color Scale — 50–950 Palette & CSS TokensBrand Style Guide — Generate a Modular Draft You Can EditSmart Website Color Scheme — Semantic CSS TokensWCAG Contrast Checker — AA/AAA Ratio Online
    SEO & growth →
    Check if a URL is blocked by robots.txtCheck SSL certificate expirationCore Web Vitals CheckerFind and validate XML sitemapHreflang GeneratorIndexNow — Bing URL Submit, Key Check & Status CodesGoogle SERP PreviewMeta Tag GeneratorOn-Page SEO CheckerOpen Graph PreviewRobots.txt GeneratorJSON-LD Schema GeneratorXML Sitemap GeneratorSPF DKIM DMARC checkerUTM BuilderValidate security.txt
    Network & IP →
    Add WWW to DNS — A/CNAME, Apex Rules & Provider GuidesAWS VPC CIDR planner — Split a VPC into AZ subnetsCIDR cheat sheet — Click a prefix to see mask and hostsCIDR to IP range — Expand a prefix into usable addressesDomain Lookup — Check DNS Records & Registration OnlineWhat Is My IP Address — See Your Public IP (IPv4 or IPv6)IP range to CIDR — Turn start–end addresses into prefix listsIPv6 CIDR calculator — Expand a prefix into its address rangePrivate CIDR ranges — Check if an IP or prefix is private or special-useTerraform cidrsubnet — Get the child CIDR Terraform would returnCheck HTTP Response Headers
    Dev & data →
    Base64 Encode & Decode — Convert Text in Your BrowserChatGPT export to MarkdownCSV ↔ JSON Converter — Types, Delimiters & Localcurl to fetchHTML Entity Encoder & Decoder — Escape, Unescape & LocalJSON Schema Validator — Draft-07 Paths & LocalJWT Decoder — Read Header & Payload Locally (No Verify)Markdown ↔ HTMLYAML ↔ JSON Converter — Types, Multi-doc & Local
    AI prompt tools →
    Android prompt builder — Local + Optional AIFilm prompt builder — Local + Optional AIiOS prompt builder — Local + Optional AIMidjourney prompt builder — Local + Optional AIProduct design prompt builder — Local + Optional AIPrompt template builder — Local + Optional AIShort drama prompt generator — Local + Optional AISketch.app prompt generator — Local + Optional AIWriting prompt generator — Local + Optional AI
    Text compare →
    Compare two text files onlineCompare two Word documents for differencesExcel compare filesJSON diff checker onlineCheck difference between two texts
    Security & IDs →
    Batch checksum release filesFile Hash Checker — Verify Digests in Your BrowserFile metadata analyzerRandom Password Generator — Create Passwords LocallyUUID & ULID Generator — Create IDs in Your Browser
    Files & archives →
    Archive Extractor Online — Open Compressed Files in Your BrowserCreate zip fileMagnet Link Decoder — Parse Info Hash and Trackers LocallyUnzip File Online — Extract ZIP Files in Your Browser
  • Tool topics
  • Tool types
  • Dev Logs
☕ Buy me a coffee

Navigation

Home

Shipped all eight P0 bulk/batch table slugs as independent URLs; last two are email PDF ZIP compress and release-file checksum tables. | Dev Logs

Back to Logs

Date: 2026-09-03 18:33 Summary: Shipped all eight P0 bulk/batch table slugs as independent URLs; last two are email PDF ZIP compress and release-file checksum tables. Visibility: people

[question] 按表格逐一立项和创建工具

[try to solve]

Context

The bulk/batch table in docs/seo/keywords/bulk-batch/2026-09-03-bulk-vs-batch-tool-split.md lists eight P0 independent URLs. The user asked to brief and implement them one by one, then to keep running gates without pausing for confirmation. Batch work is a new tool per job, not multiple on an existing single-file page. Each slug contains only one of bulk or batch. Related links on first-shipped pages may point only at already-live catalog slugs.

Process

  1. Copied work-tasks/_template/ to all eight P0 slugs and filled 00–03 (coverage table, intent review, ten-locale search briefs, Planner marked 不适用). All eight coverage:gate --phase=0b passed before engineering.
  2. Implemented serially (Page/i18n of slug B only after slug A phase=4): product-photo compress, PNG compress, convert-to-JPG, convert-to-PNG, convert-to-WebP, watermark product photos, compress PDFs for email, checksum release files.
  3. Each slug followed the same gate chain: English master → 03 row 1b → merge:tools → lint:tool-page → coverage:gate --phase=2 → nine locales from briefs (batches of three) → 2b listing en,zh,es,ja → coverage:gate --phase=4 → README zh+en bullets → $env:CROSS_TOOL_UPDATE='1'; npm run verify:tool -- --slug=…. Isolation needs that flag because sibling work-tasks/ folders sit in the same dirty tree.
  4. Watermark verify:tool first failed on illegal XML control characters in the SVG comment and a short zh description (118 < 120). Rewrote the icon as clean ASCII and lengthened zh copy, then re-ran verify green. WebP had the same icon-control-char failure earlier; a clean SVG plus a later full lint:seo (during PDF/checksum verify) confirmed the icon.
  5. PDF page rasterizes each file with pdf.js + pdf-lib (email/print/max presets), skips encrypted/broken rows, and ZIPs separate PDFs (not a merge). Checksum page hashes with chunked File.slice + Web Crypto SHA-256, optional MD5 via crypto-js CDN, pastes SHA256SUMS for match/mismatch/missing, and exports CSV + SUMS text with no ZIP of the binaries.
  6. Inbound related on live neighbors: add-watermark → watermark; compress-pdf → email PDF batch; file-hash → checksum. Confirmed prerendered H1s: zh PDF 「批量压缩 PDF 以便发邮件」, zh checksum 「批量计算发版文件校验和」; English checksum H1 and loadSample present. Home cards appear on public/index.html and public/zh/index.html. No browser tab in this session.

Root cause / analysis

A queue job has different primary controls than the single-file neighbor (shared preset, skip table, ZIP-or-export, compare column). Splitting by object and verb (compress vs convert vs watermark vs checksum) matches how people search and avoids a format-dropdown hub. English H1 stays the long-tail sentence; Chinese H1 uses 批量… without stuffing bulk/batch. Compress must not become convert; checksum must not ZIP the originals.

Solution

All eight P0 URLs are in the catalog (opts, localProcessing: true) with ten locales:

slug Job
bulk-compress-product-photos JPEG/WebP toward a listing-size cap, ZIP
bulk-compress-png-images Always PNG+alpha, ZIP
bulk-convert-images-to-jpg Always JPEG + white matte, ZIP
bulk-convert-images-to-png Always PNG, ZIP
bulk-convert-images-to-webp Always WebP, no JPEG fallback, ZIP
batch-watermark-product-photos Shared stamp, preview one, apply all, ZIP
batch-compress-pdfs-for-email Shared email preset, ZIP of N PDFs
batch-checksum-release-files SHA-256 table, SUMS compare, CSV/SUMS export

Notes / boundaries

  • No Keyword Planner CSV for this theme; not a long_gap weekly attack.
  • fflate / pdf.js / pdf-lib / crypto-js may load from jsDelivr; FAQ in every locale states files stay on the device and are not uploaded to a server.
  • Isolation for this dirty tree needs CROSS_TOOL_UPDATE=1.
  • P1 rows (watermark PDFs, password/unlock PDFs, SVG set, Amazon resize, strip EXIF, hero WASM, rotate PDFs, convert AVIF, compress GIF) were not in this pass.

[actions]

  • Added catalog, page, icon, ten i18n shards, README lines for the six remaining P0 slugs after product-photo and PNG compress
  • Fixed watermark and WebP SVG illegal XML control characters; lengthened watermark zh description
  • Pointed add-watermark, compress-pdf, and file-hash related arrays at the new batch pages
  • Ran coverage:gate 0b/2/4 and verify:tool with CROSS_TOOL_UPDATE=1 for each shipped slug
OnlineFreeTools.org · Learning project · Iterating
About·Privacy·Terms·Contact·GitHub