Skip to content

feat: implement Aspen visual refresh, commerce UX, and localization - #36

Merged
hta218 merged 15 commits into
mainfrom
thanhdev
Aug 27, 2026
Merged

hta218 merged 15 commits into
mainfrom
thanhdev

Conversation

@thanh251

@thanh251 thanh251 commented Aug 20, 2026 •

Copy link
Copy Markdown
Contributor

Aspen storefront refresh: new visual system, homepage sections, and commerce features

Design system & homepage

Updated global theme settings and design tokens: typography, colors, spacing, buttons, cards, badges, and forms
Implemented and refined responsive homepage sections: Slideshow, Featured Collections, Hotspots, Featured Products, Image with Text, Videos, Promotion Grid, Testimonials, Articles, Countdown, Highlights, Instagram, Accordion, and Map
Added dynamic layout scenarios matching the Figma designs, including two independently configurable images in Image with Text
Improved Weaverse schemas, presets, and merchant-facing controls for navigation, arrows, buttons, colors, typography, and layout
Fixed sliders, tabs, testimonial looping, countdown layout, and responsive behavior
Storefront experience

Redesigned header, footer, navigation, cart, search, product, and collection pages
Added Journal, blog index, contact, account, and order detail sections
Added wishlist support backed by Shopify customer metafields
Improved predictive search on desktop and mobile, consolidating PopularSearch into a single reusable component
Improved collection filters, sorting, and price range controls
Updated product cards, variants, ratings, quick shop, and product story
Updated Shopify GraphQL fragments, routes, and generated API types
Improved error handling, responsive styling, and the customer account experience
Verification

Production build passes
Typecheck passes

Closes Weaverse/weaverse#29
Closes Weaverse/weaverse#30
Closes Weaverse/weaverse#35
Closes Weaverse/weaverse#31

@thanh251
thanh251 requested a review from hta218 August 20, 2026 03:32
@thanh251 thanh251 added the enhancement New feature or request label Aug 20, 2026
Implement the approved Aspen visual system and premium homepage direction based on the Figma designs.

- Update global theme settings, design tokens, typography, colors, spacing, buttons, cards, badges, and forms
- Implement and refine responsive homepage sections:
  - Slideshow
  - Featured Collections
  - Hotspots
  - Featured Products
  - Image with Text
  - Videos
  - Promotion Grid
  - Testimonials
  - Articles
  - Countdown
  - Highlights
  - Instagram
  - Accordion
  - Map
- Add dynamic layout scenarios matching the approved Figma designs
- Improve Weaverse schemas, presets, defaults, and merchant-facing controls
- Add configurable navigation, arrows, buttons, colors, typography, and layout properties
- Fix sliders, tabs, testimonial looping, countdown layout, and responsive behavior
- Support two independently configurable images in Image with Text Scenario 1
- Polish desktop and mobile layouts for closer visual parity with Figma

Verification:
- Production build passes
- Typecheck passes
- Biome reports no errors; existing forwardRef warnings remain
Slideshow Image import Bugs
Update optional section
- Redesign header, footer, navigation, cart, search, product and collection pages
- Add Journal, blog index, contact, account and order detail sections
- Add wishlist functionality using Shopify customer metafields
- Improve predictive search for desktop and mobile
- Consolidate PopularSearch into one reusable component
- Improve collection filters, sorting and price range controls
- Update product cards, variants, ratings, quick shop and product story
- Add configurable Weaverse theme settings and storefront sections
- Update Shopify GraphQL fragments, routes and generated API types
- Improve error handling, responsive styling and customer account experience
…lement QA documentation, and expand agent skill references

@hta218 hta218 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes on the exact PR head 3f8a1dd17adeb560a5db0e0e8633484359a7f8f0.

Blocking findings are inline. The candidate currently does not meet the linked tasks' build/typecheck/lint pass gate:

  • npm ci: pass
  • npm run build: pass
  • npm run routes-check: pass
  • locale/i18n/wishlist/loyalty targeted tests: 15 pass
  • npm run typecheck: fail (hero-video.tsx:260)
  • npm run biome: fail (1 error, 137 warnings)
  • git diff --check: fail (trailing whitespace / EOF issues)

Please also remove generated repository artifacts such as .pnpm-store/v11/index.db. The committed QA images are useful spot checks, but they do not demonstrate the required browse → add-to-cart flow or cart/search/locale-switching behavior; add a stable preview or focused evidence for those flows before merge.

Comment thread vite.config.ts Outdated
Comment thread app/routes/($locale).api.back-in-stock.ts Outdated
Comment thread app/sections/hero-video.tsx Outdated
Comment thread app/sections/videos/video.tsx Outdated

@hta218 hta218 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional issue #35 findings after tracing the locale contract through the exact candidate.

Comment thread app/weaverse/schema.server.ts
Comment thread app/routes/($locale).account.orders._index.tsx
Comment thread app/sections/related-articles.tsx
- protect back-in-stock requests with origin checks and rate limiting
- preserve locale across internal navigation
- expose only locales with complete translations
- fix ReactPlayer typing and Biome formatting
- remove local Vite paths and generated pnpm artifacts
- add security, locale, and cart regression coverage
@thanh251
thanh251 requested a review from hta218 August 21, 2026 04:21
Comment thread tests/cart.test.ts
@hta218

hta218 commented Aug 22, 2026

Copy link
Copy Markdown
Member

Please remove .pnpm-store/v11/index.db, ignore .pnpm-store/, and clean the .agents whitespace reported by git diff --check.

@hta218

hta218 commented Aug 22, 2026

Copy link
Copy Markdown
Member

Thanks for the follow-up fixes. For future review rounds, please reply to each comment with the fixing commit and resolve the conversation once it is addressed. Leave comments unresolved while they are still pending.

The remaining items are Klaviyo simplification, Biome, the focused cart test, and repository cleanup. Once those are done and the relevant checks pass, please ping me for re-review.

- simplify Klaviyo newsletter and back-in-stock handling
- remove the custom in-memory rate limiter and client IP parsing
- add stable behavioral cart test coverage
- resolve Biome warnings and formatting issues
- update dependencies and clear npm audit vulnerabilities
- remove local-only agent, QA, cache, and helper files from Git

@hta218 hta218 left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gate passes on 8b536cdc: npm ci, build, typecheck, routes-check, i18n:check and git diff --check all clean, unit tests 17/17. biome is clean across all 278 changed files — the one error a full run reports is an untracked .claude/settings.local.json on my machine, so worth adding .claude/ to the Biome ignore list.

All eight threads from the earlier rounds hold up in the code.

Follow-ups filed, deliberately out of scope here: #37 (cart state — Pilot solved this in Weaverse/pilot#375, read its specs before starting), #39 (wishlist error handling), Weaverse/pilot#474 (isLocalPath treats //host as local; fixing upstream).

Four blockers left, inline.

@hta218 hta218 left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Four blockers, all small. Two in the cart action trust client input the server should verify for itself; two mishandle an empty state and cost the customer either the product page or their saved items. Details inline.

Comment thread app/sections/main-product/index.tsx
Comment thread app/routes/($locale).cart.tsx
Comment thread app/routes/($locale).cart.tsx
Comment thread app/routes/($locale).api.wishlist.ts
Comment thread app/components/wishlist/wishlist-provider.tsx Outdated
- Document prerequisites, installation, and local development
- Explain Shopify Storefront API and Weaverse Studio setup
- Add safe environment variable placeholders and security guidance
- Document theme customization and Oxygen deployment
- Add common troubleshooting steps
- Document all 38 key Aspen sections and their intended usage
- Add section and shared-block reference tables
- Document required and optional settings for each section
- Add recommended image sizes, aspect ratios, and copy guidance
- Document responsive and mobile behavior
- Add homepage, collection, PDP, editorial, account, and order page examples
- Add common mistakes and a pre-publish checklist
- document native, selling-plan-compatible, and adapter-required integrations
- cover reviews, messaging, subscriptions, wishlist, loyalty, search, and analytics
- explain public/private credential boundaries and local versus Oxygen setup
- add configured and unconfigured test guidance, QA checklist, and troubleshooting
- link to official Shopify, Weaverse, and provider documentation
@thanh251
thanh251 requested a review from hta218 August 25, 2026 04:44
@hta218

hta218 commented Aug 25, 2026

Copy link
Copy Markdown
Member

None of the four blocking threads have been touched — the code behind them is unchanged since 8b536cdc. What landed is the Weaverse/weaverse#34 docs work, merged in from docs/34-third-party-app-integrations.

Being direct about the workflow, since that matters more here than any single fix:

Concretely:

  1. Fix the four threads and reply to each with the fixing commit.
  2. Open Add column with image section weaverse#34 as its own PR off docs/34-third-party-app-integrations — it can merge now instead of waiting on cart fixes.
  3. Retitle this PR and add Closes Weaverse/weaverse#29, Closes Weaverse/weaverse#30, Closes Weaverse/weaverse#35.

Nothing else into this branch until those four are closed out.

…rash

- Guard against missing products and selected variants on the product page
- Read existing discount codes from the server-side cart before applying or rolling back codes
- Validate gift card success against newly added cards only
- Remove client-provided discount codes from the custom cart-code form
- Preserve the visible wishlist when the API returns an error
- Update repository ignores for local-only files
- Pass build, typecheck, routes-check, i18n, Biome, 23 unit tests, and the focused cart test
@thanh251 thanh251 changed the title Thanhdev feat: implement Aspen visual refresh, commerce UX, and localization Aug 26, 2026
@thanh251

Copy link
Copy Markdown
Contributor Author

@hta218 All blocking issues have been addressed in 33d1f8e, and the related conversations are resolved. All required checks pass. Re-requesting review — thank you.

@hta218 hta218 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please resolve the conflicts

@thanh251
thanh251 requested a review from hta218 August 27, 2026 03:03
@hta218
hta218 merged commit 7b37d77 into main Aug 27, 2026
2 checks passed
@thanh251
thanh251 deleted the thanhdev branch September 3, 2026 08:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants