Handcraftedwallpaper

repo: ~/Projects/handcraftedwallpaper · 81 commits · 0 in last 24h, 0 in last 7d ·

Search the build

81 commits indexed

  1. d609345 2026-07-06 Square product-card images (aspect-ratio 1/1)
  2. 452d875 2026-07-03 corner-nav: move login to its own hamburger in upper-left (panel slides from left)
  3. f7b8c69 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.
  4. f0510e4 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)
  5. 21e82ea 2026-06-11 handcraftedwallpaper: rails fire again — wire to matcher + per-site railSynonyms mapping curated rail names to real tag vocab
  6. 0f4c927 2026-06-11 Recompute aesthetic from tags via classifyAesthetic (was degenerate 'all' snapshot)
  7. a0c7f81 2026-06-09 step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
  8. 1e425aa 2026-06-09 snapshot before step2 codemod
  9. 73a36ba 2026-06-03 Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
  10. 149f129 2026-06-03 seo/a11y: add visually-hidden <h1> (site name) for heading semantics — zero visual change
  11. 3c6e948 2026-06-03 a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
  12. 24c57f4 2026-06-01 admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
  13. 061a7e4 2026-06-01 fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
  14. 99ea198 2026-06-01 catalog: fill from Shopify (handcraftedwallpaper niche)
  15. 16c9b95 2026-06-01 dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
  16. ed4beb5 2026-06-01 FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
  17. b6a7d6f 2026-06-01 hero: rotate curated room-setting pool (hero-pool.json), guard >=1400px, no swatch blur
  18. 6c325d0 2026-06-01 header name → domain name 'Handcrafted Wallpaper' (remove odd brand name)
  19. a02b4fa 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
  20. d4ba7e3 2026-06-01 disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
  21. 06c0842 2026-06-01 fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
  22. 885f232 2026-06-01 homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
  23. be93c2a 2026-06-01 Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
  24. fb77ae2 2026-06-01 gradient hero (unique hue 337deg) — no niche photography available
  25. 20e9e93 2026-06-01 gradient hero (unique hue 337deg) — no niche photography available
  26. 9d84f5e 2026-06-01 fleet rebuild (gap-fill): dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
  27. 9e6b7f9 2026-06-01 Re-add Big Red embed (revert conflicted; re-injected)
  28. 36d75eb 2026-06-01 fleet rebuild (header-only): dw-header (hamburgers UL + centered name) + accent — local branch
  29. d0fa753 2026-06-01 hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
  30. 1017786 2026-06-01 Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
  31. 6afa721 2026-06-01 noopener,noreferrer on sister-site window.open popup (FB target=_blank link already carried rel)
  32. 3edf279 2026-06-01 /api/facets now drill-down counts over the active filtered set via shared filterProducts() (was counting whole niche catalog regardless of q/aesthetic/vendor); /api/products refactored to share the helper, same behaviour
  33. cabd007 2026-05-30 fix: remove served backup file from public/ and patch .gitignore to cover *.bak-* pattern
  34. 0b07430 2026-05-29 feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
  35. 1693eeb 2026-05-28 scrub vendor name leaks from products.json source (2 products: title/vendor/tags cleaned per sku-redact denylist)
  36. b9e9c6a 2026-05-26 frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
  37. 8216d67 2026-05-26 sku-redact: wire shared vendor-id display scrubber
  38. 09c69d8 2026-05-26 Revert "rails: tag-aware via shared rail-match helper + editorial LABELS (rescue flat grid)"
  39. d98385d 2026-05-26 rails: tag-aware via shared rail-match helper + editorial LABELS (rescue flat grid)
  40. d4c15d5 2026-05-25 scrub customer-facing surface: hardcode 'Designer Wallcoverings' on rail-card (was p.vendor), add noreferrer to FB target=_blank
  41. 2646f8f 2026-05-25 add 404-guard: JSON for /api/*, index.html fallback for everything else
  42. 5aa683a 2026-05-25 wire api-vendor-redact middleware — mount first so all /api/* responses get vendor stripped + ?vendor= query dropped
  43. fab0ab6 2026-05-25 pull-from-shopify: use shared classifier with rails primary, local aestheticOf as fallback
  44. 69cece3 2026-05-25 retag aesthetic from PG: 15 rows updated
  45. 292412a 2026-05-20 add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
  46. ede70e1 2026-05-20 fix: /about → history.html alias (was 404)
  47. 375ce7f 2026-05-19 make server.js self-contained — inline admin-catalog (kamatera deploy unblock)
  48. 808327b 2026-05-19 Phase 2b: harden .card .pat against long-token title clipping (overflow-wrap)
  49. 83e6b59 2026-05-19 fix: null-guard dead #theme-toggle reference (clean console + immediate grid render)
  50. dde6571 2026-05-19 Phase 2: mobile-ready + tap-to-reveal
  51. 1574ed8 2026-05-19 stage2: wire microsite catalog + admin CRUD + grid/list view
  52. bcffd21 2026-05-18 untrack 18 stale .bak/.pre snapshot files and gitignore the patterns
  53. 2e99863 2026-05-18 add clean-URL routes for about/history/care/sourcing/trade — fixes dead /about nav link
  54. cc0c4d0 2026-05-18 fix /api/facets total — report niche-filtered product count, not pre-niche PRODUCTS.length
  55. f1c5e32 2026-05-18 fix sort select — loadGridPage now passes sort to /api/products and applies persisted choice on first load
  56. 9bb57b8 2026-05-14 hero-4grid: relocate json from data/ to public/ for Express static
  57. 4df77eb 2026-05-14 4-grid hero: drop-in script + crop CSS + initial 4 newest products
  58. 6445e0c 2026-05-14 favicon: Mag-7-inspired SVG glyph
  59. e464cdf 2026-05-13 fix env wiring — anchor dotenv to __dirname so .env loads even when pm2 cwd is wrong
  60. 2c7e890 2026-05-13 corner-nav: title-case the brand name even when .ns-name source is lowercase
  61. eb42243 2026-05-13 corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
  62. f53b546 2026-05-13 corner-nav: fix injection — script tag was landing inside HTML comment, now anchored to real </body>
  63. 1003731 2026-05-13 embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
  64. 287389d 2026-05-13 chip-click → product details modal; vendor redacted in card overlay
  65. fcee2d3 2026-05-13 add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
  66. eba53b1 2026-05-13 remove stray contact modal markup that was rendering inline on the page
  67. be542c5 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.
  68. 743d890 2026-05-13 brand: replace remaining fake brand globally → 'handcraftedwallpaper' across head/meta/wordmark/footer — enforces MEMORY brand-stem rule
  69. 3ab0550 2026-05-11 fleet-grid refine: chip_uniform_aspect (handcraftedwallpaper)
  70. 50eb46d 2026-05-11 snapshot before fleet-grid refine tick 7
  71. 3fa3c6d 2026-05-10 sort-skill UI: add Light→Dark / Dark→Light / Color Wheel options
  72. 046b004 2026-05-10 sort-skill canonical: add light-dark/dark-light/wheel + helpers
  73. 7a6e9f9 2026-05-07 graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
  74. baaba9c 2026-05-07 graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
  75. d52f702 2026-05-07 graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
  76. 8a1c4e8 2026-05-07 graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
  77. 15ba5da 2026-05-07 graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
  78. 9e14599 2026-05-07 graphic-loop pass 8: theme-aware font DM Serif Display (panel-approved comprehensive 16-bucket assignment)
  79. 1983e3b 2026-05-06 graphic-loop pass 5: serif hero typography (Cormorant Garamond) + nav legibility (qwen3 unanimous)
  80. a0e5322 2026-05-06 graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
  81. eace864 2026-05-06 initial scaffold (gitify-all 2026-05-06)

Authors

Agents used

  • none detected

Skills used

  • /products4
  • /vendor3
  • /facets3
  • /sample2
  • /tags2
  • /body2
  • /list2
  • /sliders2
  • /about2
  • /handle1
  • /a11y1
  • /ideas1
  • /json1
  • /pattern1
  • /aesthetic1
  • /index1
  • /theme21
  • /detail1
  • /rail-match1
  • /site-config1
  • /catalog1
  • /history1
  • /care1
  • /sourcing1
  • /trade1
  • /account1
  • /search1
  • /menu1
  • /meta1
  • /wordmark1

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

cabd007 · 2026-05-30 · fix: remove served backup file from public/ and patch .gitignore to cover *.bak-* pattern
public/index.html.bak-20260526152130 was being served by express.static —
the existing *.bak.* gitignore pattern uses a dot separator and did not catch
the hyphen-dated variant. Removed the file and added *.bak-* to .gitignore.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
0b07430 · 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.
d98385d · 2026-05-26 · rails: tag-aware via shared rail-match helper + editorial LABELS (rescue flat grid)
- Add buildRails/railFacets from ../_shared/rail-match with graceful fallback
- Expand NICHE_POS to include 'handmade' and 'faux wood' (actual catalog tags);
  niche-filtered count 1→15 products
- /api/sliders now uses buildRails(PRODUCTS_NICHE, SITE_RAILS) for tag-aware matching
- /api/facets aesthetics now uses railFacets (consistent with sliders)
- site.config.json rails curated to 2 meaningful non-vendor buckets:
  'traditional' (5 items, 33%) and 'teal' (6 items, 40%)
- LABELS in index.html: added 'traditional'→'Traditional Craft', 'teal'→'Teal & Jewel Tones'
- hydrateIdeas updated to fetch /api/sliders and render dynamic rail blocks;
  falls back gracefully if no rails qualify
- Result: 2 meaningful rails, 0 vendor names, 0 junk metadata rails

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
69cece3 · 2026-05-25 · retag aesthetic from PG: 15 rows updated
before: hand-block=1, hand-painted=1, handmade=14
after:  all=15, hand-painted=1

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>
375ce7f · 2026-05-19 · make server.js self-contained — inline admin-catalog (kamatera deploy unblock)
PG-backed admin catalog now opt-in via MICROSITE_ADMIN_ENABLED=true.
_shared/site-config gracefully falls back to inline minimal loader.
Prod (Kamatera) stays static — data/products.json, no pg, no _shared dep.
Dev (Mac2) flips the flag on to use dw_unified + /admin/catalog UI.

File tree

22 files tracked. Click any to browse the source at HEAD.

Other build journals

← Handbag Authentication  ·  all 4 projects  ·  Healthcarewallpaper →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 1ms