Skip to content

Conversation

@brianlovin
Copy link
Owner

Summary

Added a gallery view option to the Good Websites page, allowing users to toggle between list and gallery layouts. This provides a more visual way to browse websites with preview images.

Key Changes

  • New GoodWebsiteGalleryItem component: Displays websites as cards with preview images, hover overlays showing name/URL, and integrated like buttons
  • New ViewToggle component: Toggle control to switch between list and gallery views, available on both desktop and mobile
  • Updated GoodWebsitesPageClient: Integrated view mode state management and conditional rendering of list vs gallery layouts
  • Enhanced LikeButton: Added ghost-light variant for use on image overlays with semi-transparent styling

Implementation Details

  • Gallery items feature smooth image loading with globe icon placeholder and error handling
  • Hover overlay displays website name, formatted URL, and like button with proper event handling to prevent navigation
  • View preference is managed in component state (can be extended to persist in localStorage if needed)
  • Both views maintain consistent styling and responsive behavior across mobile and desktop
  • Gallery uses responsive grid (1 column mobile, 2 columns tablet, 3 columns desktop)

https://claude.ai/code/session_01Y1GhJD7tUatVfNzsfYn1i8

- Add ViewToggle component with list/gallery toggle buttons
- Create GoodWebsiteGalleryItem with thumbnail and hover overlay showing name + URL
- Add ghost-light variant to LikeButton for use on dark backgrounds
- Update GoodWebsitesPageClient to support switching between list and gallery views

https://claude.ai/code/session_01Y1GhJD7tUatVfNzsfYn1i8
@vercel
Copy link

vercel bot commented Jan 29, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
brios Ready Ready Preview, Comment Jan 29, 2026 6:45am

Request Review

- Use next-themes for shader color switching (CSS vars unsupported)
- Add stricter URL validation with trim() check
- Restructure LikeButton variant styles to avoid !important
- Persist view mode preference with Jotai atomWithStorage
- Update Notion schemas with new fields

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Use ! modifier to override Button's ghost hover styles, ensuring
the black background is visible on gallery card hover.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Removes duplicate code between GoodWebsiteGalleryItem and PreviewCard
by extracting the PlaceholderShader component and imageCache Set into
shared modules. This ensures images cached via hover previews in list
view are recognized when switching to gallery view.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Adds previewImageDark field throughout the data layer to support
theme-aware preview images. Updates Notion schema definitions and
passes dark variant to PreviewCard components.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@brianlovin brianlovin merged commit 0a4134d into main Jan 29, 2026
3 checks passed
@brianlovin brianlovin deleted the claude/add-sites-gallery-view-VFjOz branch January 29, 2026 06:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants