Healthcarewallpaper
repo: ~/Projects/healthcarewallpaper · 79 commits · 0 in last 24h, 0 in last 7d ·
Search the build
79 commits indexed
8a0ab70
2026-07-06
Square product-card images (aspect-ratio 1/1)
096d3be
2026-07-03
corner-nav: move login to its own hamburger in upper-left (panel slides from left)
908b26a
2026-06-19
Mount new-arrivals promo strip (Tier B): require ../_shared/_universal-promo-banner before express.static — text-only rotating 'New · <product> →' banner from /api/products?sort=newest. Local only; deploy gated.
27ad4ad
2026-06-18
fix: safeImg allow same-origin /img/ proxy urls (vendor-neutral image proxy 2026-06-03) — product cards were falling back to hero-bg (images all wrong)
03a4107
2026-06-11
Recompute aesthetic from tags via classifyAesthetic (was degenerate 'all' snapshot)
b10ca28
2026-06-09
step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
fa580ac
2026-06-09
snapshot before step2 codemod
1b18280
2026-06-03
Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
98f2787
2026-06-03
seo/a11y: add visually-hidden <h1> (site name) for heading semantics — zero visual change
4e05dfa
2026-06-03
a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
4855aef
2026-06-01
admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
0c87679
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
a36a3ba
2026-06-01
dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
d815c9b
2026-06-01
FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
4ebfd66
2026-06-01
hero: rotate curated room-setting pool (hero-pool.json), guard >=1400px, no swatch blur
30000aa
2026-06-01
header name → domain name 'Healthcare Wallpaper' (remove odd brand name)
131d3c1
2026-06-01
hero: huge 2520px clean hero from dw_unified (graphic-designer vetted; no header/text/watermark)
7bc1d02
2026-06-01
header A-rebuild: dw-header.js wins fleet — patched to hide original header + corner-nav + v1, fix centered site-name (title fallback), add theme toggle; v1 removed from index
f4cfe47
2026-06-01
header: remove dw-header.js — fixes overlapping hamburgers (DW-HAMBURGER-NAV v1 sole nav); fleet regression sweep
9603a43
2026-06-01
hero/ideas: single big full-bleed hero (remove 2x2 four-square grid + hero-4grid.js/json + inert CSS), collapse Ideas to one rail
86258b9
2026-06-01
disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
482588a
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
d90cc0b
2026-06-01
homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
7e6bc7b
2026-06-01
Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
02664c4
2026-06-01
Re-add Big Red embed (revert conflicted; re-injected)
378a3b6
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local pilot branch
2395507
2026-06-01
hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
18733d1
2026-06-01
Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
5ddda85
2026-06-01
noopener,noreferrer on sister-site window.open popup
7235464
2026-06-01
/api/facets drill-down counts over active filtered set + clean-URL routes for /care|history|sourcing|trade|vocabulary (301 from .html, serve clean) + sitemap lists them
4c64d72
2026-05-30
scrub residual 3rd-party vendor names from products.json source (per sku-redact denylist; sku/handle + DW house brands preserved)
57a5c22
2026-05-30
fix: remove leaked public bak file and harden 404 guard regex
b9ce903
2026-05-29
feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
d110577
2026-05-28
scrub vendor name leaks from products.json source (238 products: title/vendor/tags cleaned per sku-redact denylist)
f206735
2026-05-26
frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
b0df2c9
2026-05-26
sku-redact: wire shared vendor-id display scrubber
03acc23
2026-05-26
rails: tag-aware facet filter (productInRail) so rail drill-down + pills return products (fix regression)
f427902
2026-05-26
rails: tag-aware via shared rail-match helper + editorial LABELS (fix degenerate single-rail)
e19a6c9
2026-05-26
rails: editorial labels for firing aesthetic buckets
68c30ea
2026-05-25
wire api-vendor-redact middleware as first app.use — scrubs vendor/vendors from /api/* responses fleet-wide
8c74f6a
2026-05-25
scrub p.vendor render from Ideas rail + add noreferrer to fb external link
aa5e4d3
2026-05-25
remove 3 stale .bak/.pre-* snapshot files + add snapshot 404-guard in server.js
5658048
2026-05-25
retag aesthetic from PG: 600 rows updated
e42088f
2026-05-20
add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
b28bdd3
2026-05-20
fix: /about → history.html alias (was 404)
918912a
2026-05-19
make server.js self-contained — gate _shared/admin-catalog behind MICROSITE_ADMIN_ENABLED env flag (kamatera deploy unblock)
8b0cbb0
2026-05-19
Phase 2b: harden .card .pat against long-token title clipping (overflow-wrap)
5699bcc
2026-05-19
fix: null-guard dead #theme-toggle reference (clean console + immediate grid render)
0045fb4
2026-05-19
Phase 2: mobile-ready + tap-to-reveal
9d6335c
2026-05-19
snapshot — gitify backup 2026-05-19
aecc5d7
2026-05-19
stage2: wire microsite catalog + admin CRUD + grid/list view + repair dead rails
89abc1d
2026-05-18
untrack 19 stale .bak/.pre-* snapshot files + gitignore the patterns
dfe8084
2026-05-18
wire sort select to API: add state.sort + pass sort param in product fetch
98aa5c0
2026-05-18
fix /api/facets total to report niche-filtered count not pre-filter count
31bc6fb
2026-05-14
hero-4grid: relocate json from data/ to public/ for Express static
3a75362
2026-05-14
4-grid hero: drop-in script + crop CSS + initial 4 newest products
d0d655a
2026-05-14
favicon: Mag-7-inspired SVG glyph
491d174
2026-05-13
fix env wiring — add __dirname-anchored dotenv + dotenv dep so ADMIN_PASS / GEORGE_AUTH actually load
c1a1b29
2026-05-13
corner-nav: title-case the brand name even when .ns-name source is lowercase
1d42deb
2026-05-13
corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
871e731
2026-05-13
embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
9beea75
2026-05-13
chip-click → product details modal; vendor redacted in card overlay
1d00f72
2026-05-13
add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
143cbba
2026-05-13
remove stray contact modal markup that was rendering inline on the page
6126843
2026-05-13
header: remove duplicate <header> with dwmOpen-contact (was overlapping ns-header) + add display:none default to .ns-modal so How-can-we-help only opens on click. Restores canonical logo-UL + hamburger-UR layout per MEMORY rule.
f442fdf
2026-05-13
brand: replace remaining fake brand globally → 'healthcarewallpaper' across head/meta/wordmark/footer — enforces MEMORY brand-stem rule
2d0ae3b
2026-05-11
hamburger nav: apply canonical pattern from sister-site fleet
ca12011
2026-05-11
snapshot before fleet-grid refine
b4219fa
2026-05-10
sort-skill UI: add Light→Dark / Dark→Light / Color Wheel options
aa07191
2026-05-10
sort-skill canonical: add light-dark/dark-light/wheel + helpers
e3049b0
2026-05-07
graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
13ad8ca
2026-05-07
graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
2e92a41
2026-05-07
graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
135c362
2026-05-07
graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
5779e98
2026-05-07
graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
07ecc4b
2026-05-07
graphic-loop pass 7 override: Lato (3-0 panel: theme-fit correction)
5e7adca
2026-05-06
graphic-loop pass 5: serif hero typography (Cormorant Garamond) + nav legibility (qwen3 unanimous)
b32ea55
2026-05-06
graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
909e4e1
2026-05-06
initial scaffold (gitify-all 2026-05-06)
Skills used
/sample 2 /vendor 2 /tags 2 /handle 2 /facets 2 /index 2 /list 2 /products 1 /a11y 1 /body 1 /text 1 /watermark 1 /ideas 1 /json 1 /pattern 1 /care 1 /theme2 1 /detail 1 /sliders 1 /rail-match 1 /traditional 1 /stripe 1 /geometric 1 /grasscloth 1 /minimalist 1 /vendors 1 /about 1 /admin-catalog 1 /account 1 /search 1
Creative ideas + design notes
Commits with substantial prose (≥120 chars) — the rationale behind each move.
57a5c22 · 2026-05-30 · fix: remove leaked public bak file and harden 404 guard regex
- Deleted public/index.html.bak-20260526152130 which was served with 200
(the .bak-<timestamp> suffix escaped the old regex guard)
- Updated 404 guard in server.js: \.bak([.\-].*)? now matches *.bak-* dated
variants in addition to *.bak and *.bak.N
- Added *.bak-* glob to .gitignore so timestamped bak files stay untracked
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
b9ce903 · 2026-05-29 · feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
Default: theme1, toggle hidden. Opt-in via ?theme=2 or localStorage
('wallco-page-theme' key shared across the fleet). Same gate pattern
as dw-domain-fleet productPage.
f427902 · 2026-05-26 · rails: tag-aware via shared rail-match helper + editorial LABELS (fix degenerate single-rail)
- Replaced aesthetic-only /api/sliders (matched aesthetic field only → 1 rail, commercial=100%)
- Wire buildRails(PRODUCTS_NICHE, SITE_RAILS) + railFacets() from _shared/rail-match.js
- Curated site.config.json rails: vinyl/traditional/stripe/geometric/grasscloth/minimalist
- Added LABELS for all rail keys in public/index.html
- 6 rails fire (70%/34%/28%/26%/12%/14%), each 12 items capped, no vendor names
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
5658048 · 2026-05-25 · retag aesthetic from PG: 600 rows updated
before: all=600
after: commercial=600
Backfills correct multi-bucket aesthetic tagging from dw_unified.microsite_products
(DTD verdict B, 2026-05-25 fleet retag run).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
File tree
21 files tracked. Click any to browse the source at HEAD.
rendered in 1ms