Linenwallpaper

repo: ~/Projects/linenwallpaper · 88 commits · 0 in last 24h, 0 in last 7d ·

Search the build

88 commits indexed

  1. bf73c4e 2026-07-06 Square product-card images (aspect-ratio 1/1)
  2. 06536ba 2026-07-03 corner-nav: move login to its own hamburger in upper-left (panel slides from left)
  3. 7eb0e7f 2026-06-23 Update grid density slider to desktop-only (3-12 columns)
  4. b222993 2026-06-22 auto-save: 2026-06-22T21:48:03 (1 files) — public/index.html
  5. 20149d6 2026-06-22 fix: improve sort dropdown positioning with overflow handling
  6. 2e98843 2026-06-22 fix: prevent sort dropdown cutoff on left edge
  7. 769b483 2026-06-22 feat: add pill-style sort control styling to match grid slider
  8. 9e649c5 2026-06-22 fix: improve grid density slider CSS to prevent overlap with sort controls
  9. b4da2f9 2026-06-22 enhance: smart product name hiding on 6-column grids
  10. 2914d00 2026-06-22 upgrade: mobile-optimized grid density slider with touch buttons
  11. b9d5fe0 2026-06-22 feat: add grid density slider (DW standard) — adjustable columns 2–6, persistent localStorage
  12. 1f0e5ee 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.
  13. f7a60cb 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)
  14. c5c2b32 2026-06-11 linenwallpaper: rails fire again — wire sliders + grid filter to aesthetic-OR-tags matcher (prod-safe try-require + inline fallback)
  15. 8fad5a5 2026-06-09 step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
  16. bf0eeda 2026-06-09 snapshot before step2 codemod
  17. beae4ee 2026-06-03 Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
  18. 1e9e65b 2026-06-03 a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
  19. bae076f 2026-06-01 admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
  20. a2a5414 2026-06-01 fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
  21. e89c124 2026-06-01 dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
  22. 55c35a8 2026-06-01 FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
  23. 89a8729 2026-06-01 hero: rotate curated room-setting pool (hero-pool.json), guard >=1400px, no swatch blur
  24. decc743 2026-06-01 header name → domain name 'linenwallpaper' (remove odd brand name)
  25. 1c3f847 2026-06-01 hero: huge 2520px clean hero from dw_unified (graphic-designer vetted; no header/text/watermark)
  26. 59e3191 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
  27. eea55af 2026-06-01 disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
  28. 6c5b25e 2026-06-01 fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
  29. c82faec 2026-06-01 homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
  30. 4aa7da0 2026-06-01 Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
  31. 170ef24 2026-06-01 Re-add Big Red embed (revert conflicted; re-injected)
  32. 3a95f83 2026-06-01 fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local pilot branch
  33. 832ff37 2026-06-01 hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
  34. afad948 2026-06-01 Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
  35. b3f1755 2026-06-01 301 redirect legacy /(history|vocabulary|sourcing|care|trade|index).html -> clean URLs before express.static
  36. a31c934 2026-06-01 /api/facets drill-down: count each dimension over the active filtered set (q/aesthetic/vendor) via shared filterProducts(); /api/products reuses helper
  37. 8c441a9 2026-06-01 noopener,noreferrer on sister-site window.open popup
  38. 63a4065 2026-05-30 fix: remove served .bak file, patch 404 guard regex, add *.bak-* to .gitignore
  39. 4bf5032 2026-05-29 feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
  40. 5561263 2026-05-28 scrub vendor name leaks from products.json source (54 products: title/vendor/tags cleaned per sku-redact denylist)
  41. 6e64434 2026-05-26 frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
  42. b01c3cb 2026-05-26 sku-redact: wire shared vendor-id display scrubber
  43. a0b0344 2026-05-26 linenwallpaper: editorial rail/facet labels — linen-flavored display map (Linen Weaves, Modern Linen, Classic Linen, Natural Flax) over real aesthetic buckets; behavior unchanged
  44. 228f637 2026-05-26 linenwallpaper: commit config-rails fix — aspirational weave/fine/bouclé (0 hydrate) → real aesthetic buckets textured/contemporary/beige/traditional (4 rails fire)
  45. 48365f9 2026-05-26 homepage: add retrowalls-canonical rail-sections (id=rails + renderRailSections)
  46. 822b5f3 2026-05-25 remove p.vendor render from Ideas rail card — replace with Designer Wallcoverings (customer-facing redaction)
  47. ded12ab 2026-05-25 add clean-URL routes for nav links — /history /vocabulary /sourcing /care /trade
  48. e13d761 2026-05-25 add 404-guard for .bak/.pre-* files — defense-in-depth against accidental serve
  49. bda38a4 2026-05-25 fix /api/facets total — reflect filtered (niche) list count, not raw PRODUCTS
  50. 5ac690b 2026-05-25 wire api-vendor-redact middleware FIRST in app.use chain — strips vendor field + vendors facet + ?vendor= from all /api/* responses
  51. fb65b1e 2026-05-25 retag aesthetic from PG: 230 rows updated
  52. 11b7cad 2026-05-20 add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
  53. 7caf54e 2026-05-20 fix: /about → history.html alias (was 404)
  54. ae2afdd 2026-05-19 make server.js self-contained — gate _shared/admin-catalog behind MICROSITE_ADMIN_ENABLED env flag (kamatera deploy unblock)
  55. dd434eb 2026-05-19 wire state.sort into loadGridPage /api/products URL (fleet sort fanout)
  56. 782a1de 2026-05-19 Phase 2b: harden .card .pat against long-token title clipping (overflow-wrap)
  57. c8fd59e 2026-05-19 Phase 2: mobile-ready + tap-to-reveal
  58. ef56740 2026-05-19 stage2: wire microsite catalog + admin CRUD + grid/list view
  59. 6b04d01 2026-05-18 Untrack 19 stale backup files from git and broaden .gitignore to catch .bak.* and .pre-* (they were served publicly from public/)
  60. 290b077 2026-05-18 Remove dead pass-12 leftovers from server.js (unused PRODUCTS_ORIG, pointless global, stale comment)
  61. 5ac29df 2026-05-14 hero-4grid: relocate json from data/ to public/ for Express static
  62. b27fd57 2026-05-14 4-grid hero: drop-in script + crop CSS + initial 4 newest products
  63. 1d0045a 2026-05-14 favicon: Mag-7-inspired SVG glyph
  64. ae19bc2 2026-05-13 fix env wiring — add __dirname-anchored dotenv + dotenv dep so ADMIN_PASS / GEORGE_AUTH actually load
  65. 5393593 2026-05-13 corner-nav: title-case the brand name even when .ns-name source is lowercase
  66. 17ec367 2026-05-13 corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
  67. 2b565d0 2026-05-13 corner-nav: fix injection — script tag was landing inside HTML comment, now anchored to real </body>
  68. 9a28840 2026-05-13 fix: contact modal CSS+HTML (was rendering inline as raw emoji/links)
  69. 1bac6c5 2026-05-13 embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
  70. 4e217dc 2026-05-13 chip-click → product details modal; vendor redacted in card overlay
  71. a1af580 2026-05-13 add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
  72. c47d641 2026-05-13 remove stray contact modal markup that was rendering inline on the page
  73. 1ccc818 2026-05-13 snapshot: 1 file(s) changed, +1 new
  74. 6bac45f 2026-05-11 fleet-grid refine: chip_uniform_aspect (linenwallpaper)
  75. 5d525ef 2026-05-11 snapshot before fleet-grid refine
  76. a483e2a 2026-05-10 sort-skill UI: add Light→Dark / Dark→Light / Color Wheel options
  77. f16a1d4 2026-05-10 sort-skill canonical: add light-dark/dark-light/wheel + helpers
  78. b827970 2026-05-10 apply R1+R2+R4 hero standing rules — strip Loma Studio, lowercase serif wordmark below photo, add data-hero-mode huge default + four-square hydration
  79. 6b7d7bb 2026-05-07 graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
  80. 9a42e59 2026-05-07 graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
  81. d4ec01a 2026-05-07 graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
  82. 9ed2b53 2026-05-07 graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
  83. c331bdd 2026-05-07 graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
  84. 6d596d2 2026-05-07 graphic-loop pass 8 fix: divergent template — swap heading font to Libre Baskerville
  85. 1ecfc66 2026-05-07 graphic-loop pass 8: theme-aware font Libre Baskerville (panel-approved comprehensive 16-bucket assignment)
  86. 93f743a 2026-05-06 graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
  87. 0e19d74 2026-05-06 Rebrand: LINEN WALLPAPER → Loma Studio (Loewe template)
  88. e257a68 2026-05-06 initial scaffold (gitify-all 2026-05-06)

Authors

Agents used

  • none detected

Skills used

  • /products4
  • /vendor3
  • /index2
  • /sample2
  • /tags2
  • /body2
  • /facets2
  • /list2
  • /handle1
  • /text1
  • /watermark1
  • /ideas1
  • /json1
  • /pattern1
  • /aesthetic1
  • /theme21
  • /detail1
  • /facet1
  • /fine1
  • /boucl1
  • /contemporary1
  • /beige1
  • /traditional1
  • /sliders1
  • /div1
  • /history1
  • /vocabulary1
  • /sourcing1
  • /care1
  • /trade1

Creative ideas + design notes

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

7eb0e7f · 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>
2e98843 · 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
63a4065 · 2026-05-30 · fix: remove served .bak file, patch 404 guard regex, add *.bak-* to .gitignore
public/index.html.bak-20260526152130 was being served by express.static (HTTP 200)
because the 404-guard regex only blocked .bak followed by . or EOL, not .bak-TIMESTAMP
suffixes. Removed the file, fixed the guard to match .bak- patterns, and added
*.bak-* to .gitignore so timestamped backups can never slip in again.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
4bf5032 · 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.
48365f9 · 2026-05-26 · homepage: add retrowalls-canonical rail-sections (id=rails + renderRailSections)
Fleet rails sweep A3 — adds the canonical DW rail-sections pattern from
retrowalls (per LEDGER 2026-05-26 correction note). Renders rails from
/api/sliders ABOVE the flat grid on the unfiltered '/' home view; hides
itself when state.q or state.facet !== 'all'. Clicking 'View all -> on a
rail title calls state.facet=aes + resetGrid + scrollIntoView('#shop')
which is the canonical jumpToFacet behavior. Patch is 3 pieces:
  (1) <div id='rails' style='display:none'></div> before <div id='grid'>
  (2) .rail-section/.rail-head/.rail-all/.grid.rail-grid CSS
  (3) async renderRailSections() fn + startup call right after loadGridPage().
Coexists cleanly with the existing 2-rail Ideas block above (which renders
'New this week' + 'Curated picks' from /api/products and survives in any
filter state).
fb65b1e · 2026-05-25 · retag aesthetic from PG: 230 rows updated
before: all=236
after:  all=6, beige=13, contemporary=9, textured=198, traditional=10

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>
0e19d74 · 2026-05-06 · Rebrand: LINEN WALLPAPER → Loma Studio (Loewe template)
First proof-of-concept of the per-site brand-identity rollout from the
dw-fashion-templates skill. Linen had 94% product overlap with cork — worst
duplicate-content offender. New brand identity makes it visually + textually
distinct from any sister site.

Changes:
- Title/meta/JSON-LD: 'LINEN WALLPAPER' → 'Loma Studio'
- Tagline: 'Quiet texture' → 'Soft as linen. Made slowly.'
- Palette: dark gold theme → soft cream/sienna (Loewe tokens)
- Headline font: Playfair Display → Cormorant Garamond
- Removed: cross-network 'DW Universe' link, mini-constellation viewer,
  'designer wallcoverings family vertical' footer text, parentOrganization
  schema. Steve's directive: no DW visible except About Us.
- Footer text rewritten as standalone Loma Studio voice
- Verified live: 7 'Loma Studio' mentions, 0 legacy DW touchpoints

File tree

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

Other build journals

← Lifestyle Asset Intel  ·  all 4 projects  ·  Linkedin Agent →

Export

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

rendered in 1ms