Skip to content

Post Detail Screen

Location: apps/mobile/src/app/(main)/content/

The post detail screen renders the full post with threaded replies, tagged comments, co-author attribution, emoji reactions (EmojiPay), boosts, and series navigation.


Structure

PostDetailScreen
  ├─ PostHeader (author, persona, interest, depth, journalism badge)
  ├─ PostBody (title + body markdown or media)
  ├─ PostMeta (created_at, visibility, boost indicator)
  ├─ CoAuthorStrip (accepted co-authors with split percentages)
  ├─ EmojiPayBar (emotion breakdown for this post)
  ├─ ActionBar (react, reply, bookmark, share, boost, emoji-pay)
  ├─ SeriesNav (prev/next if post belongs to a series)
  └─ ReplySection
       ├─ ReplyTab[All | Reactions | Criticisms | Contributions]
       └─ ReplyList (threaded, kind-filtered)

API Calls

DataEndpoint
Post detailGET /posts/:id
RepliesGET /posts/:id/replies?kind=<kind>&cursor=<id>
EmojiPay breakdownGET /economy/posts/:id/breakdown
Series itemsGET /series/:seriesId/items
ReactPOST /posts/:id/react { kind }
BookmarkPOST /posts/:id/bookmark
ReplyPOST /posts/:id/replies { body, kind }
Send EmojiPayPOST /economy/pay { receiverId, postId, emotion, tier }
BoostPOST /economy/posts/:id/boost { tier }

Tagged Comments (Reply Kinds)

KindRep RewardDescription
reply+1Plain reply
reaction0Short emotional response
criticism+2Counter-argument (50–300 chars enforced)
contribution+5Substantive addition (≥ 100 chars)

The reply composer shows kind selector chips. criticism requires 50+ chars and shows a counter.


Co-Author Attribution

If the post has accepted PostCoAuthor rows, a strip shows each co-author with their splitShare %. When EmojiPay is sent to this post, mana is split atomically at send time:

  • Primary author: amount - sum(coAuthorAmounts)
  • Each co-author: floor(amount * splitShare / 100)

EmojiPay Bar

Displays the breakdown of all payments on this post:

Love: 45 mana  |  Awe: 12 mana  |  Insight: 8 mana  |  ...

Tap an emotion opens the EmojiPay wheel with 6 tier options.


EmojiPay Wheel

A circular animated picker (Reanimated):

  • 8 emotion segments (Love/Awe/Joy/Curiosity/Gratitude/Insight/Calm/Courage)
  • Drag to select emotion
  • 6 tier buttons appear after selection (Spark=1/Wave=3/Storm=10/Surge=25/Tempest=50/Nova=100)
  • Tiers ≥ 2 (Storm+) require minimum reputation in post's interest
  • Confirm → POST /economy/pay

Boost UI

Available to post author only when emoji-pay feature flag is on:

  • Tier 1: 10 mana → ×1.5 boost for 24h
  • Tier 2: 25 mana → ×2.0 boost for 48h
  • Shows active boost timer and score multiplier

Series Navigation

If the post belongs to a PostSeries, a prev/next nav bar appears at the bottom:

← Part 2: Previous title     Part 4: Next title →

Also shows series title + current position (e.g., "Part 3 of 7").

Tap "Follow series" → POST /series/:id/follow.


Post Actions (ActionBar)

ActionIconNotes
React (heart)❤️POST /posts/:id/react { kind: 'heart' }
Reply💬Opens reply composer bottom sheet
Bookmark🔖POST /posts/:id/bookmark
Share↗️System share sheet + POST /posts/:id/repost
BoostAuthor only; opens boost tier picker
EmojiPayOpens emotion wheel
Mute🔇POST /posts/:id/mute
Report🚩Opens report form

Regulus — invite-only social-knowledge platform