Inspiration
Inspiration came from the massive inequality in the Web2 music industry. Platforms like Splice and Beatstars are centralized black boxes. They take huge cuts (up to 30-50%), hold producer payouts for weeks, and act as unaccountable, centralized judges for copyright disputes.
We were inspired by the "Bring Web2 to Web3" challenge to build something "radically useful." We wanted to fix this broken system by giving producers true ownership, instant payments, and transparent, community-driven governance over their art.
What it does
BeatCopyright is a user-centric, decentralized marketplace for music beats, powered by the Polkadot SDK. It's not just a dApp; it's a complete, on-chain economy with three key roles:
- Producers: Can list their beats, setting their own price and license terms (e.g., Exclusive, Non-Exclusive, Lease). Their copyright is minted on-chain, and they receive 100% of their sales instantly.
- Buyers: Can browse, preview, and purchase beat licenses in a single, trustless atomic transaction. They receive an immutable, on-chain proof of their license.
- Enforcers: This is our key innovation. Enforcers are a decentralized, staked body of community members who can review and vote on copyright disputes. This makes the marketplace self-healing and fair, removing the need for a central corporate entity to resolve conflicts.
How we built it
We went straight to the core of Polkadot's "Web3 Cloud" vision. BeatCopyright's backend is not a smart contract; it's a custom Substrate pallet built in Rust.
- Custom Pallet (
pallet-beatcopyright): The entire logic—the marketplace, the licensing, and the dispute system—is built directly into the blockchain's runtime. This gives us maximum performance and sovereignty. - Key Extrinsics: We built custom functions (
Extrinsics) that define our app's capabilities, such aslistBeat,purchaseLicense,fileDispute, andverifyCopyright. - On-Chain State: All beats, licenses, and dispute statuses are stored in Substrate's on-chain
Storage. - Frontend: The UI is a React/TypeScript dApp.
- Connector: We used Polkadot.js to connect the frontend directly to our Substrate node, allowing us to sign transactions and subscribe to our custom on-chain events (like
BeatListed,LicensePurchased, andDisputeFiled).
Challenges we ran into
The Polkadot SDK is incredibly powerful, but it has a steep learning curve. Our biggest challenge was designing the on-chain dispute logic (Enforcer role) from scratch.
Modeling the state transitions for a beat (e.g., Available -> Disputed -> Verified/Rejected) in Rust, and ensuring the logic was fair and resistant to manipulation, was a complex design problem. Another challenge was mastering the Polkadot.js API to create a smooth, reactive frontend that subscribed to our custom pallet's specific events, rather than just standard token transfers.
Accomplishments that we're proud of
We are incredibly proud of building a full-featured, end-to-end dApp in just 6 weeks. Our biggest accomplishment is the three-role system. The "Enforcer" role is a novel, practical solution to on-chain governance and copyright, which is a problem that plagues all creator platforms.
We're also proud that we built an entire developer documentation site (the 'Docs' tab in the app) with an API reference and architecture guide for our pallet. This proves BeatCopyright is a serious platform, not just a hackathon prototype.
What we learned
This hackathon was a deep dive into the "appchain" philosophy. We learned firsthand why some applications (like a high-stakes copyright marketplace) demand their own custom runtime logic, which simply isn't possible with standard smart contracts.
We learned the fundamentals of Substrate, Rust, and how to design Extrinsics and Storage. Most importantly, we learned how to think about decentralized governance and trust at the protocol level (our Enforcer system).
What's next for BeatCopyright
BeatCopyright is just the beginning. Our roadmap is focused on becoming a true "Web3 creator economy" primitive:
- Full Enforcer Economics: Implementing staking and slashing for the Enforcer role to create a fully incentivized and secure dispute system.
- Parachain Deployment: Deploying our pallet on a Polkadot parachain (or as its own parachain) to connect to the wider ecosystem.
- Beat-as-NFT: Integrating with a parachain like Statemint to represent beat licenses as NFTs, making them tradable, composable, and enabling...
- Automatic Royalty Splits: Using on-chain logic to automatically split royalties for collaborations (e.g., 50% to producer, 50% to artist).
Built With
- polkadot
- react
- react-native
- transcript

Log in or sign up for Devpost to join the conversation.