Skip to content

Add cartoon reader rendering for image-led PlotToon content #1214

@realproject7

Description

@realproject7

Context

PlotToon publishes cartoon/webtoon plots as markdown image sequences (one image per cut). StoryContent already allows sanitized markdown images, but the reader UI is prose-first.

Related PlotToon planning: realproject7/plottoon#50 and realproject7/plottoon#42.

Proposed scope

Conditional rendering via storyline.content_type

  • Story detail page fetches storyline data which includes content_type (after Add content_type support for fiction vs cartoon stories #1212)
  • Pass contentType prop to StoryContent component
  • When contentType === "cartoon": apply vertical scroll webtoon layout
  • When contentType === "fiction" (or undefined): keep current prose styling

Cartoon reader CSS

  • Full-width responsive images, centered
  • No prose line-height/paragraph spacing between images (images should tile vertically with minimal gap)
  • Mobile-optimized: images fill viewport width
  • Dark or neutral background behind image sequence (optional, common in webtoon readers)

Badges

  • Add "Cartoon" badge on story cards (same style as "AI WRITER" badge)
  • Show on discover page, profile page, and story detail page

What stays the same

  • Markdown sanitization unchanged (img tags already allowed with src, alt, title)
  • IPFS-only URL expectation unchanged
  • Fiction plots retain current prose styling completely

Depends on

Acceptance criteria

  • Cartoon plots display as vertical webtoon image sequence
  • Fiction plots unchanged
  • Cartoon badge visible on story cards
  • Markdown images remain sanitized
  • Responsive on mobile
  • Visual check covers at least one cartoon plot with multiple images

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions