Skip to content

Implement Shared Royalty Token contracts  #89

Description

@barlock

Overview

As a developer building a PIB token, I'd like a reference implementation, interfaces, and abstract classes so that I can quickly iterate on my dApp PIB token implementation.

Reference

Questions

  • HMW scale a Shared Royalty Token and allow for virtually unlimited franchisors?
    • Gas prices on transfer will likely increase drastically on transfer function if math is in there preventing sale after a certain number
  • How do we handle withdraw?
    • Is there an ERC standard for handling this allowing for rounding error?
    • Likely there is something to do with the first question here. 🤷‍♂️
  • Is 721 the correct abstraction?

Assumptions

Acceptance

  • Shared Royalty Token
    • A Shared Royalty Token interface ISharedRoyaltyToken
    • An abstract contract SRT AbstractSharedRoyaltyToken.
      • Contains common SRT implmentations
  • SharedRoyaltyTokenEnumerable enumerable
    • Interface ISharedRoyaltyTokenEnumerable
    • Implemented SharedRoyaltyTokenEnumerable for extending
  • PIBBookendToken
    • Implements abstract class and transferPayoutByFranchisorIndex to match bookend model

Story Draft

  • Create withdrawal SharedRoyaltyToken interface (likely just find an existing ERC or other art)
  • Implement ISharedRoyaltyToken (pib interface)
  • Implement ISharedRoyaltyTokenEnumerable (Enumerable interface)
  • Implement AbstractSharedRoyaltyToken
  • Implement SharedRoyaltyTokenEnumerable
  • Implement SharedRoyaltyBookendToken

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions