Inspiration
Our inspiration for creating this project stemmed from a desire to empower music creators and artists to connect directly with their fans using blockchain technology. We wanted to provide a platform where artists could share their music, engage with their audience, and monetize their content in a decentralized and transparent manner. The idea was to leverage the benefits of blockchain to address issues such as ownership rights, royalties, and direct fan interactions.
What it does
This project is a Celo blockchain-based music sharing website that allows creators and artists to share their music with their fans. The platform offers various features, including:
- Creator Profile Creation: Artists can create their profiles by minting a Soulbound Token (SBT).
- Music Upload and NFT Generation: Artists can upload their music to generate a Music NFT (zMT).
- Music Playback: Users can play and listen to music directly from IPFS with a fully functional music player.
- Display Music NFTs: The platform showcases the music NFTs created by the artists.
- Search Functionality: Users can search for artists by name and music by title, artists, or features.
- Tipping and Withdrawal: Fans can tip creators/artists in Celo, and creators can withdraw their earnings.
How we built it
We built the project using a combination of blockchain and web technologies. The key components included:
- Celo Blockchain: Used for creating and managing SBTs and zMTs, handling tipping transactions, and ensuring transparency and security.
- IPFS: For decentralized storage of music files.
- Smart Contracts: Developed to manage the minting of tokens, music uploads, and tipping functionalities.
- Frontend: Built with React to provide an intuitive and responsive user interface.
- Backend: Node.js and Express for handling API requests and interactions with the blockchain.
Challenges we ran into
During the development of this project, we encountered several challenges:
- Blockchain Integration: Integrating the Celo blockchain with our application and ensuring seamless interactions between smart contracts and the frontend.
- IPFS Integration: Managing efficient and reliable storage and retrieval of music files from IPFS.
- User Experience: Designing a user-friendly interface that caters to both tech-savvy users and those new to blockchain technology.
- Security: Ensuring the security of user data and transactions on the platform.
Accomplishments that we're proud of
We are proud of several accomplishments achieved during this project:
- Successful Blockchain Integration: Seamlessly integrating Celo blockchain for minting SBTs and zMTs.
- Functional Music Player: Developing a fully functional music player with features such as play, pause, skip, seeker, and volume control.
- Decentralized Storage: Efficiently using IPFS for storing and retrieving music files.
- User-Friendly Interface: Creating an intuitive and responsive user interface that enhances the user experience.
What we learned
Throughout the development process, we gained valuable insights and knowledge:
- Blockchain Development: Deepened our understanding of smart contracts, token standards, and blockchain integration.
- Decentralized Storage: Learned the intricacies of using IPFS for decentralized storage solutions.
- User Experience Design: Improved our skills in designing user-friendly interfaces for blockchain applications.
- Security Best Practices: Enhanced our knowledge of security measures required for blockchain applications.
What's next for Genrez
Looking ahead, we have several plans to further enhance the platform:
- Playlist Management: Introducing functionality for users to create and manage playlists.
- Streaming API: Developing a streaming API to improve music playback performance.
- Advanced Search: Implementing search features with debounce and throttle to optimize performance and user experience.
Built With
- hardhat
- react
- solidty
- typescript
Log in or sign up for Devpost to join the conversation.