Skip to content

feat: multi-recipient royalty splits for collaborative beats #8

Description

@brightpixel-dev

Difficulty: Hard · Priority: Critical

Overview

Support multiple collaborators (co-producer, vocalist, etc.) splitting earnings on one sample automatically on-chain. Today SampleData has a single uploader and earnings are paid to one address only.

Acceptance Criteria

  • Upload form supports adding N collaborator addresses + percentage shares (must sum to 100%)
  • Contract stores splits alongside the sample and pays each collaborator's share on purchase
  • Profile page shows "your split" per sample instead of assuming full ownership
  • Withdraw flow works per-collaborator

Technical Approach

Requires a new/updated contract entry point (crate-contracts) accepting Vec<(Address, u32 bps)>, crediting each recipient's earnings balance pro-rata on purchase_license. Frontend: dynamic collaborator rows in Upload with live remaining-% validation.

Spans two repos (contract + frontend) and changes the earnings model everywhere it's read (Profile, withdraw flow) — not a self-contained UI addition.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions