SkateSpots/release-notes.txt
shakespeare.diy a74225fe0d feat: platform monetization — listing fees for paid events & Lab profiles v1.0.62
Architecture:
- usePlatformFee hook: central fee config (featuredEvent/labProfile/featuredShop)
  5,000 sats each, 30-day validity, localStorage persistence, owner bypass
- PlatformFeePayment component: generic reusable payment gate
  auto-pay via NWC/WebLN, QR fallback, active/expired state display
  all fees route to skatespots@minibits.cash

Events (CreateEventPage):
- New optional "Entry Fee" field
- Triggers 5,000 sat platform fee when filled
- Stores entry-fee + paid tags on published event
- Free events: zero friction unchanged

The Lab (Become{Coach,Filmer,Editor}Page):
- Triggers 5,000 sat fee when "Rate" field is filled
- Submit disabled with clear CTA until fee paid
- Free/volunteer profiles: zero friction unchanged

Rule: "pay only when you earn"
- No rate set → publish instantly, no fee
- Rate set → 5,000 sats to SkateSpots, valid 30 days
- Platform owners always bypass

Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
2026-07-24 02:19:45 +07:00

32 lines
1.4 KiB
Text

v1.0.62 — Platform monetization: listing fees for paid events & Lab profiles
NEW: usePlatformFee hook — central fee configuration
- PLATFORM_FEES.featuredEvent = 5,000 sats (paid/ticketed events)
- PLATFORM_FEES.labProfile = 5,000 sats (coaches/filmers/editors with a rate)
- PLATFORM_FEES.featuredShop = 10,000 sats (reserved for future use)
- 30-day validity stored in localStorage per fee type
- Platform owner pubkeys always bypass fees automatically
NEW: PlatformFeePayment component — generic, reusable payment gate
- Auto-pay via connected NWC or WebLN wallet
- QR code fallback for manual Lightning payment
- Shows "Active — X days remaining" when fee is already paid
- Branded gradient UI consistent with SkateSpots design system
- All fees go to skatespots@minibits.cash
FEATURE: CreateEventPage — entry fee field
- New "Entry Fee" input field (optional)
- When filled, triggers 5,000 sat platform listing fee gate
- Entry fee stored as event tag for display on event detail page
- Free events: zero friction, no fee required
FEATURE: BecomeCoachPage — monetized profile fee
- When "Rate" field is filled, 5,000 sat listing fee required
- Submit button locked with clear message until fee paid
- Free/volunteer coaches: zero friction
FEATURE: BecomeFilmerPage — same as coach
FEATURE: BecomeEditorPage — same as coach
RULE: "You only pay when you earn" — free profiles and free events
always publish instantly with zero fees.