Skip to content

nancy197/music-coin

Repository files navigation

MusicCoin - AI-Powered Music Tokenization Platform

MusicCoin is a revolutionary platform that enables artists to generate original songs using AI and instantly mint each track as a tradable "music coin" on the blockchain. Fans can directly invest in, trade, and support their favorite songs and artists.

Features

  • 🎵 AI Music Generation: Create unique tracks using SunoAI with simple prompts
  • 🪙 Instant Tokenization: Mint tracks as music coins on Zora protocol
  • 📈 Trading & Investment: Buy, sell, and trade music coins
  • 👥 Artist Profiles: Comprehensive artist pages with track history
  • 💼 Portfolio Management: Track your music coin investments
  • 🔗 Web3 Integration: Connect with popular crypto wallets

Tech Stack

  • Frontend: Next.js 15, React, TypeScript, Tailwind CSS
  • Backend: Next.js API Routes, Supabase
  • Database: PostgreSQL (via Supabase)
  • Authentication: Supabase Auth
  • Blockchain: Wagmi, Viem, RainbowKit
  • AI Integration: SunoAI API
  • Tokenization: Zora Protocol

Getting Started

Prerequisites

  • Node.js 18+ and npm
  • Supabase account
  • SunoAI API access
  • WalletConnect Project ID

Installation

  1. Clone the repository

    git clone <repository-url>
    cd music_coin
  2. Install dependencies

    npm install
  3. Set up environment variables

    cp .env.example .env.local

    Fill in your environment variables in .env.local

  4. Set up the database

    In your Supabase project, run the SQL files in the database/ folder in order:

    • schema.sql - Creates the database schema
    • rls_policies.sql - Sets up Row Level Security
    • sample_data.sql - Adds sample data (optional)
  5. Run the development server

    npm run dev
  6. Open your browser Navigate to http://localhost:3000

Project Structure

src/
├── app/                    # Next.js app directory
│   ├── api/               # API routes
│   ├── artist/           # Artist dashboard pages
│   ├── marketplace/      # Marketplace pages
│   └── profile/          # User profile pages
├── components/            # React components
├── hooks/                # Custom React hooks
├── lib/                  # Utility libraries
└── types/                # TypeScript type definitions

database/
├── schema.sql            # Database schema
├── rls_policies.sql      # Row Level Security policies
└── sample_data.sql       # Sample data for development

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors