The dApp I am currently developing requires songs to be tracked on the blockchain to prevent unsolicited reproduction and confirm uniqueness. No two songs should be exactly alike, so I chose to develop an ERC721 non-fungible token to be appropriate.

What it does

Connects Song to a unique token using the ERC721 token standard and MD5 hash.

How I built it

I use Node, Truffle, Ganache, and OpenZeppelin to develop my contracts.

Challenges I ran into

Finding an appropriate editor, I ended up using notepad++ but found later that Atom is much better. The syntax to Solidity was burdensome but I enjoyed the similarities between contracts and classes.

Accomplishments that I'm proud of

Developed a token using ERC721, a more complex token standard than the first ERC20.

What I learned

I began to learn the syntax to Solidity and how to deploy an EVM development environment for creating smart contracts on the Ethereum test network, Ropnek. I learned how to define a non-fungible token using code and began interfacing with the contract using web3 library and javascript.

What's next for Non-Fungible Song Token

Further development on Non-Fungible Song Token will allow for file upload by the client for the server to generate an MD5 hash on-the-fly, then I would move onto importing existing music databases as prevention against copyright infringement. I would like to implement Song token into a vertical implementation of Bug Bounties, Beat Bounties.

Built With

Share this project: