PolkaMusic is a substrate based public chain crafted exclusively for operating decentralized music businesses on blockchain. Envisioned as a 360 infrastructure for decentralized music, music entrepreneurs can not only create their own micro-economy for their music platform, but also leverage the ever growing list of features such as NFT, crowdfunding, decentralized storage and more like on-chain governance using $POLM native tokens. PolkaMusic also allows existing music blockchains to connect to the Polkadot ecosystem in order to interconnect siloed music economies.
The chain is a fork of the official Substrate Node Template - a supported starting point that decreases the time it takes to implement a custom next-generation blockchain.
The network is not ready for use, under development 🛠️
For more information about the project check the website 🔗PolkaMusic, the current version of PolkaMusic.io hosts a fully functional streaming platform that will connect to the “Smart Streaming Platform (SSP)” WASM Module.
Architecture
As a first step, a “Smart Streaming Platform (SSP)” WASM Module will be created that will allow music entrepreneurs to be a part in the genesis of a brand new SSP microeconomy that rewards the artists and the respected content creators autonomously. While initializing the module, the SSP developer (initial admin) will be able to customize deployment parameters such as token name, initial balance, inflation setting, etc.
$SSP_Token - When a Smart Streaming Platform initializes the SSP WASM Module, the platform can issue its own token that can be used for royalty payments, membership fee and internal governance.
Custom Inflation Logic - In order to pay the artists in $SSP_Token, a daily reward pool must be created that results in inflation of $SSP_Token supply.
Smart Record Contracts (SRC) - Artists can create Smart Record Contracts for each song, containing meta data such as song name, license and the wallet information of multiple stakeholders.
Stream Reports - Every streams from the frontend will be reported via Off-chain workers to trigger the business logic as described in the smart record contract by that author.
Royalty Splitter - Whenever a payment is made to a Smart Record Contract, the payment is automatically split between the constituent band member’s wallets based on weights assigned during SRC creation.
Autonomous Royalty Payments - Processes the stream reports in a rolling 24 hours period by autonomously calculating the play_time against the usage of the whole platform in the past 24 hours and paying out of the reward pool.
- Clone this repo and update the submodules:
git clone https://github.com/polkamusic/polkamusic
cd polkamusic
- Install RustLang with necessary dependencies
cargo run --release -- --dev --tmp
Once the project has been built, the following command can be used to explore all parameters and subcommands:
./target/release/node-template -h
The provided cargo run
command will launch a temporary node and its state will be discarded after
you terminate the process. After the project has been built, there are other ways to launch the
node.
This command will start the single-node development chain with persistent state:
./target/release/node-template --dev
Command to purge the development chain's state:
./target/release/node-template purge-chain --dev
- This chain uses
substrate-node-template
v3.0.0