Skip to content

Token manager is a set of smart contracts on Solana to facilitate conditionally managed ownership. Using the invalidators and approvers in various ways allows for building rentals, expiring in-game items, subscriptions, permits, tickets, passes and more.

License

Notifications You must be signed in to change notification settings

solana-nft-programs/token-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cardinal

License Release

An open protocol for issuing managed tokens on Solana.

Background

Cardinal is a composable protocol for issuing conditional NFTs that are managed by the protocol. Using the invalidators and approvers in various ways allows for building rentals, in-game items, DNS services and more.

Carinal protocol provides a token-manager implementation as well as basic plugins for paid claim, permissioned transfer, and time invalidation. These plugins can be extended to support various use cases or similar ones built with entirely new logic for token handling the token invalidation.

Packages

Package Description Version Docs
cardinal-token-manager Manages conditionally owned tokens Crates.io Docs.rs
cardinal-paid-claim-approver Approves users to claim tokens from a token-manager Crates.io Docs.rs
cardinal-time-invalidator Invalidator for time-based token-managers Crates.io Docs.rs
cardinal-use-invalidator Invalidator for use-based token-managers Crates.io Docs.rs
cardinal-rental-counter Counter for tracking a users issued tokens via token-manager Crates.io Docs.rs
@cardinal/token-manager TypeScript SDK for token-manager npm Docs

Addresses

Program addresses are the same on devnet, testnet, and mainnet-beta.

Plugins

Cardinal token-manager is made to be composable. It allows for plugins for

  1. Claim approvers
  2. Transfer authorities
  3. Invalidators

When instantiating a token-manager, the issuer can set a claim approver, transfer authority and invalidators that can control the claim, transfer and invalidate mechanisms. These are all plugins that can be pointed to any program-derived account or user owned account. Out of the box, there are basic plugins to power use and time rentals and subscriptions.

Documentation

Documentation is a work in progress. For now, one should read the tests.

We soon plan on releasing a React library to make it easy to integrate Cardinal with your frontend.

License

Cardinal Protocol is licensed under the GNU Affero General Public License v3.0.

In short, this means that any changes to this code must be made open source and available under the AGPL-v3.0 license, even if only used privately.

About

Token manager is a set of smart contracts on Solana to facilitate conditionally managed ownership. Using the invalidators and approvers in various ways allows for building rentals, expiring in-game items, subscriptions, permits, tickets, passes and more.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published