Skip to content

feat: 5 home/energy calculators (concrete, gravel, wallpaper, BTU, EV charging)#3

Merged
kitfunso merged 2 commits into
masterfrom
feat/home-energy-calculators
May 29, 2026
Merged

feat: 5 home/energy calculators (concrete, gravel, wallpaper, BTU, EV charging)#3
kitfunso merged 2 commits into
masterfrom
feat/home-energy-calculators

Conversation

@kitfunso

Copy link
Copy Markdown
Owner

What

Five new low-competition, high-intent, affiliate-friendly calculators (registry 162 -> 167), built and reviewed via a full /dev-framework-rl episode:

  • Concrete - slab/footing/column volume + bags (m/ft)
  • Gravel - tonnes + bulk bags for an area (m/ft)
  • Wallpaper - rolls needed, pattern-repeat aware (unit toggle converts all fields)
  • BTU - room air-con/heating sizing (m/ft, 20 cooling / 25 heating BTU per sq ft)
  • EV Charging Cost - per-charge, per-mile (grid-side incl. losses), full-charge in GBP

Why

GSC shows the site is fully indexed but ranks pos 56-89 on saturated head terms (0 clicks). These target rankable long-tail where page-1 is achievable, and use simple verifiable geometry/arithmetic (no drifting statutory constants). Honest caveat: new pages take weeks to index/rank, so this expands rankable keyword surface rather than spiking traffic immediately; off-page authority is the deeper fix for the pos-80 saturation (out of scope here).

QA (gated)

  • plan: eng-critic 84 + design-critic 88 (design critic caught + removed 2 date-calc dupes of DateDifferenceCalculator, switched to the shared UI kit)
  • execute: code-review-critic 88
  • review: independent-review 94 + codex (gpt-5.5) across 3 rounds caught 9 real bugs, all fixed (wallpaper feet-unit conversion, EV efficiency/clamp/copy, BTU metric handling + running-cost physics, concrete bagYield guard)
  • ship-readiness-critic 91

Test plan

  • npx vitest run - 898 pass (31 new, hand-computed)
  • npm run build - clean, 224 pages
  • No emojis / em dashes; NaN-safe inputs
  • Lighthouse on the live pages (post-deploy, per convention)

🤖 Generated with Claude Code

…, EV charging cost)

Traffic-growth cohort via /dev-framework-rl (registry 162 -> 167). Low-competition,
high-intent, affiliate-friendly calculators on the shared UI kit:
- Concrete: slab/footing/column volume + bags (m/ft)
- Gravel: tonnes + bulk bags for an area (m/ft)
- Wallpaper: rolls needed with pattern repeat (unit-aware)
- BTU: room air-con/heating sizing (m/ft, 20/25 BTU per sqft)
- EV Charging Cost: per-charge, per-mile (grid-side), full-charge in GBP

898 unit tests pass, build clean (224 pages). Reviewed through plan eng/design critics,
code-review, independent review, and 3 rounds of codex (gpt-5.5) which caught 9 real
issues (all fixed): wallpaper feet-unit conversion, EV efficiency/clamp/copy, BTU metric
handling + running-cost physics, concrete bagYield guard.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented May 29, 2026

Copy link
Copy Markdown

Deploying boring-maths with  Cloudflare Pages  Cloudflare Pages

Latest commit: a7340f5
Status: ✅  Deploy successful!
Preview URL: https://3297a06a.boring-maths.pages.dev
Branch Preview URL: https://feat-home-energy-calculators.boring-maths.pages.dev

View logs

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6946489e8e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

: (INSULATION_FACTOR[inputs.insulation] ?? 1);

// Additive loads: kitchen appliance heat + extra occupants beyond two.
const kitchenBtu = inputs.roomUse === 'kitchen' ? KITCHEN_EXTRA_BTU : 0;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not add kitchen heat to heating demand

When mode is heating and the room type is kitchen, this still adds the 4,000 BTU appliance-heat allowance, so a default 180 sq ft kitchen is reported as 8,500 BTU/hr instead of the 4,500 BTU/hr heating load. Kitchen appliance heat is an extra cooling load, but it should not increase the heater size; this only affects heating-mode calculations for kitchens.

Useful? React with 👍 / 👎.

<ButtonGroup
options={UNIT_OPTIONS}
value={inputs.unit}
onChange={(value) => updateInput('unit', value as ConcreteUnit)}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve concrete dimensions when changing units

Changing the concrete unit only flips inputs.unit, leaving the existing dimension values untouched. If a user starts from the default 4 m × 3 m × 0.1 m slab, or enters metric dimensions and then selects feet, the same numbers are reinterpreted as feet, dropping the result from 120 bags to a few bags rather than showing the equivalent foot measurements. This affects any in-progress calculation when the unit toggle is used.

Useful? React with 👍 / 👎.

<ButtonGroup
options={UNIT_OPTIONS}
value={inputs.unit}
onChange={(value) => updateInput('unit', value as GravelUnit)}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve gravel dimensions when changing units

The gravel unit toggle also only updates unit, so existing dimensions are reinterpreted instead of converted. For example, the default 0.05 m depth becomes 0.05 ft after selecting feet, which cuts the calculated volume and tonnes by roughly two thirds; this gives misleading results whenever users switch units after values are present.

Useful? React with 👍 / 👎.

These pages predate this PR (untouched by the calculator work) but failed the
repo's prettier --check gate, which scans all of src/. Formatting-only, no logic change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@kitfunso kitfunso merged commit 500693a into master May 29, 2026
2 checks passed
@kitfunso kitfunso deleted the feat/home-energy-calculators branch May 29, 2026 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant