Skip to content

Comments

Add art gallery, resources, profiles, and YouTube-style art detail#5

Open
xliry wants to merge 27 commits intobanodoco:mainfrom
xliry:art-resources
Open

Add art gallery, resources, profiles, and YouTube-style art detail#5
xliry wants to merge 27 commits intobanodoco:mainfrom
xliry:art-resources

Conversation

@xliry
Copy link

@xliry xliry commented Feb 17, 2026

Summary

  • Art Gallery & Community Resources: Full browsing experience with paginated feeds, filters, and detail pages for art pieces and community resources (LoRAs, workflows)
  • User Profiles: Profile pages (/u/:username) with art and resources tabs, powered by Discord OAuth
  • YouTube-style Art Detail: Art detail page (/art/:id) uses a two-column layout — main media on the left, "More from this creator" sidebar on the right (collapses to single column on mobile)
  • Media & Upload: HLS video playback, media upload flows for art and resources, image/video support via Cloudflare
  • Resources Page: Magazine-style layout with art showcase, community news from Discord, resource cards with type filtering
  • UI Polish: Grid orphan fixes, header overlap fixes, Discord CTA, scroll-driven hero image sequence, skeleton loading states

Test plan

  • /resources — art gallery, community resources, and news sections load correctly
  • /art/:id — YouTube layout with sidebar showing other art from same creator (lg+), single column on mobile
  • /resources/:id — resource detail page loads with media viewer and creator info
  • /u/:username — profile page with art and resources tabs
  • Discord OAuth login flow works
  • /submit/art and /submit/resource — upload flows function correctly
  • Mobile responsiveness across all new pages

🤖 Generated with Claude Code

peteromallet and others added 27 commits February 14, 2026 01:06
- New section at bottom of /resources with featured latest week (left)
  and 2x2 grid of previous weeks (right)
- /resources/art-picks index page with paginated grid of all ~104 weeks
- /resources/art-picks/:weekId detail page with intro text and 10 video slots
- All content is placeholder data ready to swap in real data later
- Dark theme applied to all /resources sub-routes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Hero section with "Art & Intelligence" typography and spotlight
  carousel previewing 3 featured artists
- "The Forge" section for community LoRAs/workflows with icon header
- "The Gallery" section with editorial art picks layout: featured
  large card + sidebar with recent archives
- Art picks detail page with varied-column editorial video grid
- "The Archive" index page with staggered animation grid
- Motion animations on section entrances
- All real data hooks (Supabase) preserved, mock data only for
  art picks and spotlight carousel

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Install hls.js package for HLS video playback
- Inline discord constants instead of missing @/lib/discord module
- Fix undefined type errors in Timeline tooltip
- Add hls.js type declarations

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace CompactSpotlight hero with full-screen editorial design featuring
gradient blob background, magazine cover mockup, and stats bar. Add
Briefing sidebar layout for news section. Wrap modal in AnimatePresence.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add Community Art section powered by art_sharing Discord channel
- Add Community Resources section powered by resources Discord channel
- Create shared Discord data layer (types, hooks, media refresh)
- Remove mock ArtPicks section and routes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Render videos as <video> with preload=metadata instead of <img>
- Add fallback UI for failed media loads
- Ensure message_id is string for refresh API
- Truncate resources feed content to 4 lines
- Limit embeds to 1 per card
- Remove redundant section header

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add responsive Tailwind prefixes across Resources page components for
  proper mobile layout (spacing, text sizes, padding, modal elements)
- Remove 11 dead exports and 4 unused constants (Hero config)
- Replace useEffect state-sync anti-pattern with render-time ref check
  for filter-driven page reset

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace placeholder gradient with /bndc/0001.jpg background image
that shifts and scales on scroll for a cinematic parallax effect.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
156 images used for cinematic scroll-driven animation in hero section.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Preloads all frames into browser cache and swaps img.src directly
via ref on scroll for 60fps cinematic playback without React re-renders.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sequence completes at 50% scroll instead of 100%, and frame index
is clamped to prevent extrapolation past the last frame.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…play button

- Swap 155-frame bndc sequence for 25 assorted_propaganda images
- Remove bndc directory from repo
- Play button now toggles autoplay slideshow on magazine cover

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…d upload flows

Rebuild the /resources section into a content platform with art-first gallery,
structured resource cards, user profiles with tabs, Discord OAuth, and upload
forms for art and resources. Includes DB migration, data migration scripts,
and 23 new files across 8 implementation phases.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…unity_resources

Replace custom art_pieces and community_resources tables with the existing
media (288 rows) and assets (60 rows) tables. Art hooks now query media with
cloudflare URLs and HLS playback; resource hooks query assets with
primary_media_id joins. Resources page reduced from 4 to 3 sections
(Briefing, Art Gallery, The Forge). Upload pages insert into media/assets.
Profile queries use description column instead of bio.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Refactor: use existing media/assets tables instead of art_pieces/comm…
…d CTA

- Trim art gallery and Forge grids so last row is always full
- Add top padding on detail/submit/profile pages to clear fixed header
- Replace resource modal with page navigation via Link
- Add weekly art sharing Discord card to art gallery grid

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pass a dummy userId until artPiece is loaded to prevent
useArtPieces(undefined) from fetching all art unfiltered.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Resolved 4 merge conflicts from upstream's homepage/resources cleanup commit:
- Header.tsx: kept auth features (Discord login, user menu) with corrected imports
- useCommunityTopics.ts: kept extracted fetchTopics module
- Hero/config.ts: trivial whitespace
- Timeline.tsx: adopted upstream's CSS variable approach for chart colors

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.

2 participants