Silkwallpaper
repo: ~/Projects/silkwallpaper · 89 commits · 0 in last 24h, 0 in last 7d ·
Search the build
89 commits indexed
eead7c1
2026-07-06
Square product-card images (aspect-ratio 1/1)
ad70a88
2026-07-03
corner-nav: move login to its own hamburger in upper-left (panel slides from left)
64a79de
2026-06-23
Update grid density slider to desktop-only (3-12 columns)
c3b6e75
2026-06-22
auto-save: 2026-06-22T21:48:03 (1 files) — public/index.html
0689dd1
2026-06-22
fix: improve sort dropdown positioning with overflow handling
4530fed
2026-06-22
fix: prevent sort dropdown cutoff on left edge
aeee1ec
2026-06-22
feat: add pill-style sort control styling to match grid slider
65e31b2
2026-06-22
fix: improve grid density slider CSS to prevent overlap with sort controls
31aaa0f
2026-06-22
enhance: smart product name hiding on 6-column grids
00785eb
2026-06-22
upgrade: mobile-optimized grid density slider with touch buttons
0e42c43
2026-06-22
feat: add grid density slider (DW standard) — adjustable columns 2–6, persistent localStorage
74d5c3b
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.
91b70e4
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)
8f30065
2026-06-11
Recompute aesthetic from tags via classifyAesthetic (was degenerate 'all' snapshot)
e719916
2026-06-11
silkwallpaper: rails fire again — wire sliders/grid/facets to aesthetic-OR-tags matcher
cc78024
2026-06-09
step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
2d4e892
2026-06-09
snapshot before step2 codemod
524d5e0
2026-06-03
Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
d3eb486
2026-06-03
a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
324ca0b
2026-06-01
admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
2c15dfe
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
f516424
2026-06-01
dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
95a5554
2026-06-01
FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
c63d17a
2026-06-01
catalog: add all 986 active silk/satin/jacquard/sheen wallcoverings from Shopify (was 242 live)
3e9f6c0
2026-06-01
hero: rotate curated room-setting pool (hero-pool.json), guard >=1400px, no swatch blur
fcc90bb
2026-06-01
header name → domain name 'silkwallpaper' (remove odd brand name)
70d1b36
2026-06-01
hero: huge 2520px clean hero from dw_unified (graphic-designer vetted; no header/text/watermark)
3e1a585
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
0a32c4d
2026-06-01
disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
e635b60
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
8d58d05
2026-06-01
homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
8138cdb
2026-06-01
Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
4539a98
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
f1533ef
2026-06-01
fleet rebuild (header-only): dw-header (hamburgers UL + centered name) + accent — local branch
6a54f89
2026-06-01
Revert "Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)"
e666e37
2026-06-01
hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
69016e6
2026-06-01
Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
1f4aa21
2026-06-01
gitignore: broaden *.pre-*.bak to *.pre-* to catch pre-fix snapshot files
412c2dd
2026-06-01
301 redirect legacy .html nav pages to clean URLs (kill duplicate-content served by static)
f2a3aef
2026-06-01
noopener,noreferrer on sister-site constellation window.open(_blank)
b71454b
2026-05-30
fix: remove leaked public backup file and tighten bak-guard regex + .gitignore
5ed4841
2026-05-29
feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
547ecd5
2026-05-28
scrub vendor name leaks from products.json source (328 products: title/vendor/tags cleaned per sku-redact denylist)
165bdac
2026-05-26
frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
152e54e
2026-05-26
sku-redact: wire shared vendor-id display scrubber
8a54f67
2026-05-26
rails: editorial labels for firing aesthetic buckets
96ecbc3
2026-05-26
rails: wire /api/sliders into horizontal scroll-snap rail sections [fixed]
49000cf
2026-05-25
remove p.vendor render on rails + add noreferrer to facebook target=_blank
e11ce0d
2026-05-25
/api/facets total + counts respect q/aesthetic filters
3bb8b98
2026-05-25
add clean-URL routes for history/vocabulary/sourcing/care/trade nav
b9f92f0
2026-05-25
wire api-vendor-redact middleware + 404-guard for .bak/.pre-* files
604360a
2026-05-25
untrack server.js.pre-sort-skill (covered by .gitignore + 404-guard incoming)
8887015
2026-05-25
retag aesthetic from PG: 508 rows updated
727bae1
2026-05-20
add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
0f8930d
2026-05-20
fix: /about → history.html alias (was 404)
1c8d013
2026-05-20
make server.js self-contained — gate _shared/admin-catalog behind MICROSITE_ADMIN_ENABLED env flag (kamatera deploy unblock)
6ad2ce2
2026-05-20
silkwallpaper: untrack public/index.html.pre-sort-frontend (deleted by fleet .bak cleanup 2026-05-20)
fea16c9
2026-05-19
wire state.sort into loadGridPage /api/products URL (fleet sort fanout)
bef9158
2026-05-19
Phase 2b: harden .card .pat against long-token title clipping (overflow-wrap)
330d797
2026-05-19
Phase 2: mobile-ready + tap-to-reveal
480a0ed
2026-05-19
stage2: wire microsite catalog + admin CRUD + grid/list view; repair dead facets
8613102
2026-05-18
gitignore: also exclude timestamped .bak.* and .pre-*.bak backup files
b7e9ef9
2026-05-18
untrack stale .bak files (already gitignored, kept on disk)
899e1e3
2026-05-18
server.js: remove dead code (unused PRODUCTS_ORIG, no-op global marker, stale comment)
a7af65a
2026-05-14
hero-4grid: relocate json from data/ to public/ for Express static
5f1cbf7
2026-05-14
4-grid hero: drop-in script + crop CSS + initial 4 newest products
678caaf
2026-05-14
favicon: Mag-7-inspired SVG glyph
5e2d1a3
2026-05-13
fix env wiring — anchor dotenv to __dirname so .env loads even when pm2 cwd is wrong
d7aedb9
2026-05-13
corner-nav: title-case the brand name even when .ns-name source is lowercase
ff1ebcd
2026-05-13
corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
4a371db
2026-05-13
corner-nav: fix injection — script tag was landing inside HTML comment, now anchored to real </body>
81a8d9c
2026-05-13
fix: contact modal CSS+HTML (was rendering inline as raw emoji/links)
5771e78
2026-05-13
embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
4b7ca14
2026-05-13
chip-click → product details modal; vendor redacted in card overlay
aeb9452
2026-05-13
add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
a107e6c
2026-05-13
remove stray contact modal markup that was rendering inline on the page
c58afd9
2026-05-11
fleet-grid refine: chip_uniform_aspect (silkwallpaper)
11cdfa7
2026-05-11
snapshot before fleet-grid refine tick 6
5060509
2026-05-10
sort-skill UI: add Light→Dark / Dark→Light / Color Wheel options
2bd54e0
2026-05-10
sort-skill canonical: add light-dark/dark-light/wheel + helpers (canary)
8d6a8f4
2026-05-10
apply R1+R2+R4 hero standing rules — strip Atelier Couture, lowercase serif wordmark below photo, add data-hero-mode huge default + four-square hydration
11a7724
2026-05-07
graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
4be9e8a
2026-05-07
graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
0b1968f
2026-05-07
graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
ad59c60
2026-05-07
graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
4b8488c
2026-05-07
graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
a56a78a
2026-05-06
graphic-loop pass 5: serif hero typography (Cormorant Garamond) + nav legibility (qwen3 unanimous)
bdeb7a7
2026-05-06
graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
fb25695
2026-05-06
initial scaffold (gitify-all 2026-05-06)
Skills used
/index 3 /products 3 /facets 3 /sliders 2 /sample 2 /vendor 2 /tags 2 /body 2 /list 2 /grid 1 /handle 1 /satin 1 /jacquard 1 /sheen 1 /text 1 /watermark 1 /ideas 1 /json 1 /pattern 1 /theme2 1 /detail 1 /aesthetic 1 /vocabulary 1 /sourcing 1 /care 1 /trade 1 /about 1 /admin-catalog 1 /links 1 /account 1
Creative ideas + design notes
Commits with substantial prose (≥120 chars) — the rationale behind each move.
64a79de · 2026-06-23 · Update grid density slider to desktop-only (3-12 columns)
- Hidden entirely on mobile (< 769px)
- Desktop only: full 3-12 column slider
- Smart name hiding: product titles hide at 6+ columns
- localStorage persistence of user preference
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
4530fed · 2026-06-22 · fix: prevent sort dropdown cutoff on left edge
- Add position: relative and z-index: 100
- Add min-width: 120px for adequate button sizing
- Add overflow: visible to prevent parent clipping
- Fixes dropdown menu visibility when sort control is near left side of page
e719916 · 2026-06-11 · silkwallpaper: rails fire again — wire sliders/grid/facets to aesthetic-OR-tags matcher
All 986 products carry the degenerate aesthetic 'all', so the naive
p.aesthetic===key matching collapsed every rail to empty and made the
?aesthetic= grid filter return nothing. /api/sliders, /api/products, and
/api/facets now use rail-match (aesthetic OR tags + hybrid share gate),
prod-safe via try-require with a self-contained inline fallback for the
static-only Kamatera path. Verified on real data: 6/6 rails fire (532-889
items), aesthetic=silk grid 0->410, facet counts honest, aesthetic=all=986.
b71454b · 2026-05-30 · fix: remove leaked public backup file and tighten bak-guard regex + .gitignore
- rm public/index.html.bak-20260526152130 (was served 200 by express.static)
- server.js: fix bak-guard regex to also block .bak-TIMESTAMP filenames (hyphen-suffixed)
- .gitignore: add *.bak-* pattern to prevent timestamped backups from being tracked
5ed4841 · 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.
8887015 · 2026-05-25 · retag aesthetic from PG: 508 rows updated
before: all=508
after: architectural=1, commercial=6, contemporary=294, silk=38, textured=4, traditional=165
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
22 files tracked. Click any to browse the source at HEAD.
rendered in 1ms