Skip to content

Change 18+ to 19+ and redesign NSFW UI (badge + global toggle) #1209

@realproject7

Description

@realproject7

Changes

1. Rename 18+ → 19+ everywhere

Some countries (e.g., South Korea) use 19 as the age cutoff. Change all references:

  • Filter labels: "18+" → "19+"
  • Checkbox text: "This story contains adult content (18+)" → "(19+)"
  • NSFW badge text
  • Any other user-facing text referencing "18+"

2. Add 19 badge on book cover images

For stories with is_nsfw = true, display a circled "19" badge on the top-right corner of the cover image — same style as Korean webtoon platforms (Toptoon reference).

  • Small circular badge, solid background
  • Positioned top-right of the StoryCard cover image
  • Visible on both discover page cards and story detail page cover

3. Move 19+ toggle to the global nav bar

Replace the current 19+ checkbox in the FilterBar with a toggle button next to the PlotLink logo in the top nav bar. Reference: Toptoon's "19" pill next to the logo.

  • Small pill/badge toggle next to "PlotLink" text in NavBar
  • Click to toggle NSFW content visibility globally
  • Persist preference in localStorage (already implemented)
  • Remove the 19+ checkbox from the FilterBar (avoid duplication)
  • Toggle state applies to all pages (discover, profile, etc.)

Acceptance Criteria

  • All "18+" text changed to "19+" across the codebase
  • Circled "19" badge on cover images for NSFW stories
  • 19+ toggle pill in NavBar next to PlotLink logo
  • Toggle persisted in localStorage
  • FilterBar 19+ checkbox removed (replaced by nav toggle)
  • StoryEditPanel checkbox text updated to 19+
  • Create page checkbox text updated to 19+

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent/T3Assigned to T3 builder agentenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions