Across the arts industry, access is locked out in a manner not dissimilar to a racket; artists have difficulties giving people access to their work in a way that lets them receive proper compensation for their work.
In response, we aim to create a system that can be used to create incentives for content creators to share their works. At events, DJs and other single entities are the sole curators of art. Our project aims to promote social curation of media using advantages that we can have with dApps. With CryptoTeka, we want to explore marketplace models with new possibilities offered by cryptoeconomic primitives like non-fungible tokens.
This system can be extended to other forms of media past music, but we concluded that starting with what is more familiar for us makes the most sense at this point.
What it does
CryptoTeka can be defined as a jukebox where people can upvote songs that they would like to listen to. Whenever a song ends, it’ll play the following song in the list based on the number of received votes. If at some point no song has upvotes, nothing is played. The songs are represented as non-fungible tokens (NFT), wherein the songwriter’s address is tracked as the owner’s address. When a song is played the song (actually the NFT) is paid with a micro-transaction.
How we built it
We started coding from scratch, and for the demo we deployed a simple contract for the song’s non-fungible tokens. We uploaded a few public-domain songs to IPFS, and referenced each hash in a respective NFT. We also coded a command-line song player and a command-line voting program. We attempted to do a Status-im extension for the voting process (commands that would allow a given person to both query a list of songs and vote for a song), but given time constraints we were able to query the contract containing the song list.
Challenges we ran into
During the event we ran into issues using Kovan and Sokol testnets; we believe that this was likely because of congestion attributed to other teams simultaneously hacking away on the same chains/internet connection. This slowed things down a bit. Additionally, our lack of experience dealing with non-fungible tokens impeded slowed us down a bit. We also didn’t spend enough time preparing a robust demo for judges, and explaining the idea without the graphical interface was a bit hard.
Accomplishments that we're proud of
We learned how to deploy NFTs fast and the developers who were not familiar with Ethereum development picked it up fast. Even if the demo was simple, it worked. We also played with the rules and did not develop anything beforehand.
What we learned
That GUIs are very important for demos. Next time we will make a GUI work, even if it's not with the technology chosen at the beginning. We also exchanged knowledge so this is a win for all of us. We also learned how to use the PoA network with x-Dai.
What's next for CryptoTeka
We are discussing ideas about using NFTs in novel ways for this domain. Some of them are a bit crazy but we think they can work because they're fun. Some of the things we're discussing include:
- Different curation rulesets (in order to spice up voting/motivate votes)
- Different ways that artists can be paid out based on votes (including micro-transactions on a per-round basis, lump-sums over a night, weighted micro-payments so that all song participants receive weighted payouts for being considered/voted for in a round)
- Ways to incentivize bar/club owners to implement CryptoTeka-style rulesets (proposed business models that take the revenue bars/clubs/nightlife spots already receive, and re-packages it in a way that promotes engagement and retention)
So, the very thing to do next is to improve the prototype.