Skip to content

impl(web) Create media series page assisted-by:claude_opus_4.5#40

Closed
andykais wants to merge 2 commits into
mainfrom
claude/add-series-detail-page-ZmDvA
Closed

impl(web) Create media series page assisted-by:claude_opus_4.5#40
andykais wants to merge 2 commits into
mainfrom
claude/add-series-detail-page-ZmDvA

Conversation

@andykais

Copy link
Copy Markdown
Owner
  • Create new route /series/[series_id]/ with full page structure
  • Add SeriesController with series.search integration
  • Add SeriesQueryParamsRune with series_index sort support (default)
  • Add SeriesMediaListRune for forager.series.search API
  • Add series_index display under each media tile (#n format)
  • Add series link in browse view for media_series tiles
  • Export SeriesSearchResponse type from @forager/core
  • Implement Tag.decode() in web parsers

The series page mirrors the browse page UI with:

  • Header with filters and "Series Index" sort option
  • Sidebar showing media details with series index
  • Footer with thumbnail controls
  • Series-specific search parameters

- Create new route /series/[series_id]/ with full page structure
- Add SeriesController with series.search integration
- Add SeriesQueryParamsRune with series_index sort support (default)
- Add SeriesMediaListRune for forager.series.search API
- Add series_index display under each media tile (#n format)
- Add series link in browse view for media_series tiles
- Export SeriesSearchResponse type from @forager/core
- Implement Tag.decode() in web parsers

The series page mirrors the browse page UI with:
- Header with filters and "Series Index" sort option
- Sidebar showing media details with series index
- Footer with thumbnail controls
- Series-specific search parameters
Create a unified architecture for media pages using:
- MediaPageController: Single controller with mode config (browse/series)
- MediaQueryParamsRune: Unified queryparams handling for both modes
- Shared components in $lib/components/media_page/:
  - MediaPage: Full page composition component
  - Header, Footer, MediaList, MediaView, MediaDetails
  - SearchParams: Mode-aware search controls
  - SearchResults: Mode-aware result display with series_index

Both /browse and /series/[series_id] pages now use identical structure:
- 12 lines of code each
- Differ only in mode configuration

Key features preserved:
- Browse: group_by mode, search modes, all media types
- Series: series_index display, back-to-browse link, series-specific sorting
@andykais

Copy link
Copy Markdown
Owner Author

closing in favor of #44

@andykais andykais closed this Jan 16, 2026
@andykais andykais deleted the claude/add-series-detail-page-ZmDvA branch January 16, 2026 21:17
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