- Provide social presence
- Earn to listen
- claim ownership
- Transparent payments
- Privacy centric
- Artist side
- Homepage
- Onboarding page
- Dashboard page
- Manage Release page
- Preview Release page
- User Side
- Homepage
- Explore Collections
- Playlist page
- NFT Collections page (owned by them)
- Nextjs
- Typescript
- Tailwindcss
- MongoDB
- IPFS
- Pinata
- Move
user: repo for thelistenersideartist: repo for theartistsidecontracts: repo containing all themovesmart contracts@repo/eslint-config:eslintconfigurations (includeseslint-config-nextandeslint-config-prettier)@repo/typescript-config:tsconfig.jsons used throughout the monorepo
This Turborepo has some additional tools already setup for you:
- TypeScript for static type checking
- ESLint for code linting
- Prettier for code formatting
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
This is an example of how to list things you need to use the software and how to install them.
- pnpm
npm install pnpm@latest -g
- Get the Pinata API Key at https://www.pinata.cloud/ (
env.NEXT_PUBLIC_JWT) - Place the
MONGODB_URIin.env. - Install PNPM packages
pnpm install
- Run the developer code by:
pnpm run dev
- create a .env file and paste the follwing content in there :
NEXT_PUBLIC_JWT = ""
MONGODB_URI = ""
MODULE_ADDRESS =""
PRIVATE_KEY =""
PUBLIC_KEY=""
The project is divided into 3 parts
- Music Listeners' Repositiory
- Music Artist's Repositiory
- Smart Contracts
- When the Listener first visits the platform, they can listen to their chosen song directly.
- If they like they can buy any of the music/album NFT and can become an owner. Once they are the owner, a certain portion of the Artists' earnings will be sent to the NFT owner as a loyalty, through which they can earn while listening to the songs.
- NFT holders will further be allowed to access Artists' private communities over Discord to have chats and activities within the fan group.
- Artists will be rewarded by the number of listens from the users.
- When the artist first visits the platform, the register themselves and connect their wallet to their account. Then they put a stake amount for their account. This allows us to limit the number of Artists on the the platformm. Staked amounts will be returned only if they cross a certain threshold of listens.
- Then they're led to the dashboard from where they can either create new releases or manage their existing releases.
Use this space to show useful examples of how a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.
Don't forget to leave a star ⭐️