Glitterwalls
repo: ~/Projects/glitterwalls · 106 commits · 0 in last 24h, 3 in last 7d · █▄
Search the build
106 commits indexed
768b675
2026-09-23
front-page-steward: ux-primitives bundle (grid) TK-12031
44dba7b
2026-09-22
revert ux-primitives auto-apply — coordinator gates fan-out (TK-12031)
9099c05
2026-09-22
front-page-steward: ux-primitives bundle (silent) TK-12031
b31a5b3
2026-09-10
Add clean /privacy route (AdSense URL consistency)
b7a50ae
2026-09-10
Standardize privacy policy to /privacy.html + footer link (AdSense)
ea7f869
2026-09-10
Add AdSense-compliant privacy policy page + footer link + /privacy route
b41937f
2026-09-09
TK-11341: add AdSense Auto-Ads loader + ads.txt (revert to remove ads)
81682a1
2026-08-24
auto-data-snapshot: 2026-08-24T04:13:07 (1 data files) — server.js.ldrbak.1787569812
a579735
2026-08-24
Add p.visible!==false guard to product load filter (cluster5 resid)
d5563df
2026-08-22
auto-data-snapshot: 2026-08-22T11:19:22 (1 data files) — data/products.json
a9ccc6a
2026-08-12
viewer standard: add per-field on/off menu (Fields ▾) to product grid
7498d18
2026-08-04
fix: take infinite-scroll .loading indicator out of flow (kills ~0.3-0.4 CLS scroll-jump)
b4b93db
2026-08-04
SEO: rel=nofollow sponsored on designerwallcoverings.com links (independent ranking) [fleet-seo]
1f75f16
2026-08-04
Wire DW Meta Pixel 1431180262113856 + DW-network ad slot [ads/tracking rollout]
44b207a
2026-08-03
GA4: propagate site gtag to untagged pages (fleet coverage)
b7c9aab
2026-08-01
glitterwalls: adopt href-to-deeper-data storefront primitives (TK-10093)
b61ffba
2026-07-31
auto-save: 2026-07-31T12:57:59 (1 files) — public/drill.js
1eaf883
2026-07-30
auto-save: 2026-07-30T14:18:43 (1 files) — package-lock.json
296e009
2026-07-30
chore: v-bump (session close — hero static-first + /img filter fixes)
d280b6d
2026-07-30
hero: accept vendor-redacted /img/ paths so the carousel actually runs on live
405d229
2026-07-30
sync repo to live: preserve prod hero-bg.jpg + products.json before full deploy
733a126
2026-07-30
hero: static hero-bg.jpg back as position 1, then glitter carousel (headers cropped)
86cd45d
2026-07-30
search: scroll results into view on mobile (grid was below the fold → looked like nothing happened)
9d04a44
2026-07-29
corner-nav: block javascript:/data: URIs in search preview (URL-scheme allowlist)
96dfc26
2026-07-29
search: /api matcher now covers title+tags+description+type+vendor+sku
82edbb2
2026-07-29
corner-nav: live as-you-type search with thumbnail previews (title+tags+description)
c5f4606
2026-07-06
Square product-card images (aspect-ratio 1/1)
a94f16d
2026-07-03
corner-nav: move login to its own hamburger in upper-left (panel slides from left)
c7de50a
2026-06-25
GLM spinners: swap 26 swatch-spin GIFs for extracted still frames (mirror sync)
2c8dce3
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.
3fe8345
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)
4739f90
2026-06-11
glitterwalls: rails fire again — wire sliders + grid filter to aesthetic-OR-tags matcher (prod-safe try-require + inline fallback)
4cca505
2026-06-09
step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
e9ae180
2026-06-09
snapshot before step2 codemod
96ffa6b
2026-06-03
Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
ac58370
2026-06-03
seo/a11y: add visually-hidden <h1> (site name) for heading semantics — zero visual change
fea7e8d
2026-06-03
a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
843c816
2026-06-01
admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
86d022b
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
2839263
2026-06-01
dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
18ac241
2026-06-01
FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
3db14e3
2026-06-01
hero: graphic-designer-vetted clean replacement (no baked text/watermark/vendor logo)
2470ed9
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
21bfc5e
2026-06-01
disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
22299bb
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
e5b5d13
2026-06-01
homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
68d91f1
2026-06-01
Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
84383c9
2026-06-01
Re-add Big Red embed (revert conflicted; re-injected)
f9c4162
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local pilot branch
77894fb
2026-06-01
hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
2ea2c76
2026-06-01
Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
4f0a5b6
2026-06-01
add noopener,noreferrer to sister-site window.open(_blank) (reverse-tabnabbing defense)
682b3fe
2026-05-29
feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
37922d5
2026-05-28
scrub vendor name leaks from products.json source (109 products: title/vendor/tags cleaned per sku-redact denylist)
747eedb
2026-05-26
frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
d7dd4b1
2026-05-26
sku-redact: wire shared vendor-id display scrubber
d98956a
2026-05-26
rails: editorial labels for firing aesthetic buckets
b555921
2026-05-25
404-guard for .bak/.pre-* paths (defense-in-depth, never serve backups)
18d2974
2026-05-25
pre-paint hydration for density + view (no grid-column flash on reload)
6337f65
2026-05-25
/api/facets total now reflects filtered list (respects q + aesthetic)
435e64b
2026-05-25
add noreferrer to all target=_blank links
5503c2d
2026-05-25
remove p.vendor render from Ideas rails (replace with brand)
3d3b912
2026-05-25
wire api-vendor-redact middleware (top of chain)
4650d3e
2026-05-25
retag aesthetic from PG: 138 rows updated
a59a243
2026-05-20
add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
d057705
2026-05-20
fix: /about → history.html alias (was 404)
c4d8add
2026-05-19
make server.js self-contained — gate _shared/admin-catalog behind MICROSITE_ADMIN_ENABLED env flag (kamatera deploy unblock)
926ee05
2026-05-19
Phase 2: mobile-ready + tap-to-reveal
d844a1f
2026-05-19
stage2: wire microsite catalog + admin CRUD + grid/list view
ad29639
2026-05-18
add clean-URL routes for care/history/sourcing/trade so canonicals resolve
30b7ddc
2026-05-18
untrack 17 stale .bak snapshots and ignore *.bak.*/*.pre-* patterns
3b03cce
2026-05-18
fix /api/facets total to report niche-filtered count not pre-niche
9110605
2026-05-14
hero-4grid: relocate json from data/ to public/ for Express static
534f8aa
2026-05-14
4-grid hero: drop-in script + crop CSS + initial 4 newest products
5e6f47c
2026-05-14
favicon: Mag-7-inspired SVG glyph
5c68bf6
2026-05-13
fix env wiring — anchor dotenv to __dirname so .env loads even when pm2 cwd is wrong
399eceb
2026-05-13
corner-nav: title-case the brand name even when .ns-name source is lowercase
f593274
2026-05-13
corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
c0413bf
2026-05-13
corner-nav: fix injection — script tag was landing inside HTML comment, now anchored to real </body>
2e282cb
2026-05-13
fix: contact modal CSS+HTML (was rendering inline as raw emoji/links)
5645fc9
2026-05-13
embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
c9a70c4
2026-05-13
chip-click → product details modal; vendor redacted in card overlay
e16663a
2026-05-13
add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
18e091c
2026-05-13
remove stray contact modal markup that was rendering inline on the page
9560145
2026-05-13
snapshot: 7 file(s) changed, +7 new
a67c2f7
2026-05-11
fleet-grid refine: chip_uniform_aspect (glitterwalls)
0c442ca
2026-05-11
snapshot before fleet-grid refine tick 4
8a2f994
2026-05-08
sort modal works + 142/143 SKUs have real-pixel hex via sips
1f42bc0
2026-05-08
color: chip dots from product tags; new sorts (light→dark, dark→light, color wheel)
91b6213
2026-05-08
chips: image-only by default; hover reveals Get Sample + See in a Room. flip page to black bg + white text.
cc1b4a1
2026-05-08
rebrand to Glitter Walls — strip all Casa Rossa references (title, OG, JSON-LD, header, hero, footer, mailto, vendor remap)
9d8a4a7
2026-05-08
remove /hero-bg.jpg flash — preload + CSS default replaced with solid #0a0a0a
1d62ecd
2026-05-08
hero: shuffle hi-res pool every page load — both carousel order and 4-grid tiles rotate per visit
8ccb352
2026-05-08
hero: hi-res only (>=1600px wide) carousel; 2x2 grid fallback if not enough hi-res
5ffb6b3
2026-05-08
lock storefront scope to GLS/GLM SKU series + sequin/glitter only (143 products from full DW catalog)
c45778e
2026-05-08
Casa Rossa UX pass: fix hero/OG/footer, crossfade carousel, memo sample CTA, address in JSON-LD - Fix hero center-mark to Casa Rossa (was Glitter Walls mismatch) - Fix OG/Twitter meta titles and descriptions to Casa Rossa brand + DW service voice - Upgrade rotating hero to true crossfade carousel (6s interval, 12 images) - Add full DW address + Privacy/Terms/CCPA links to footer - Add parentOrganization + address to JSON-LD Organization schema - Fix ns-dot to brand red instead of inherited gold - Add DW link + rename Sample button to "Order Memo Sample (free)" per DW spec
170ceea
2026-05-07
graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
92fa6c0
2026-05-07
graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
ba0916b
2026-05-07
graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
3d8e66f
2026-05-07
graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
495b6eb
2026-05-07
graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
4fb36b4
2026-05-07
graphic-loop pass 8 fix: divergent template — swap heading font to Monoton
cdd2588
2026-05-07
graphic-loop pass 8: theme-aware font Monoton (panel-approved comprehensive 16-bucket assignment)
3960aaf
2026-05-06
graphic-loop pass 5: serif hero typography (Cormorant Garamond) + nav legibility (qwen3 unanimous)
19045e6
2026-05-06
graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
e2cc4d0
2026-05-06
initial scaffold (gitify-all 2026-05-06)
Authors
Steve 94 steve 7 front-page-steward 3 auto-commit-fleet 2
Skills used
/privacy 3 /products 3 /vendor 3 /glitterwalls 2 /sample 2 /tags 2 /body 2 /list 2 /facets 2 /off 1 /tracking 1 /drill 1 /www 1 /room-png 1 /universal-server-additions 1 /header 1 /data 1 /handle 1 /a11y 1 /watermark 1 /ideas 1 /json 1 /pattern 1 /theme2 1 /detail 1 /about 1 /admin-catalog 1 /history 1 /sourcing 1 /trade 1
Creative ideas + design notes
Commits with substantial prose (≥120 chars) — the rationale behind each move.
d280b6d · 2026-07-30 · hero: accept vendor-redacted /img/ paths so the carousel actually runs on live
Live catalog serves /img/<hash>.jpg redacted paths (api-vendor-redact), not
cdn.shopify.com URLs, so the hero's cdn-only filter matched zero products and
the carousel never advanced past the static image. Filter now allows /img/
(same allowlist as safeImg). Redacted images cap ~1575px, caught by the >=1000
fallback pool.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
405d229 · 2026-07-30 · sync repo to live: preserve prod hero-bg.jpg + products.json before full deploy
Full deploy to corrected path /var/www/glitterwalls.com (was wrongly
/root/Projects/glitterwalls). Pulled live hero-bg.jpg (the static hero the
carousel now leads with) and products.json into the repo so the deploy left
customer-facing image + catalog untouched; server.js search-matcher upgrade
landed live; orphaned .bak/room-png/universal-server-additions.js cleaned.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
733a126 · 2026-07-30 · hero: static hero-bg.jpg back as position 1, then glitter carousel (headers cropped)
- hero-bg.jpg painted immediately on load = position 1, before /api/products resolves
- glitter product images crossfade after it and loop back to the static image
- crossfade overlay now gets the center-12% crop (it previously bypassed the
anti-header rule), so vendor banner/header chrome is lopped off every frame
- retired the <4-hi-res 2x2 grid fallback; static-only when no product images
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
682b3fe · 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.
4650d3e · 2026-05-25 · retag aesthetic from PG: 138 rows updated
before: all=3, glitter=138, gold=1, silver=1
after: all=28, gold=35, metallic=25, silver=55
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
29 files tracked. Click any to browse the source at HEAD.
rendered in 2ms