README.md

July 5, 2026 ยท View on GitHub

RESONATE FANS BRING THE SHOW โ€ข ON-CHAIN AUDIO IP Programmable Stems โ€ข Human Studio โ€ข x402 Commerce โ€ข MCP Server



TypeScript NestJS Next.js Solidity Foundry


๐Ÿšง Work in Progress. This is an experimental project under active development. Not production-ready.


๐ŸŒŸ Overview

Resonate is an AI-native music platform that uses AI, agent interfaces, and blockchain rails as product primitives, not afterthoughts. Artists upload releases, split songs into stems, and sell licensed assets in stablecoin. Listeners get a full music app with an AI DJ, marketplace, and wallet-native purchases. AI agents discover, quote, and buy stems over HTTP with x402. No account, no OAuth, just curl + USDC + a signed receipt.

The human studio, storefront API, x402 payment flow, and MCP interface are peers over the same on-chain catalog. Three audiences, one catalog:

  • Artists: upload releases, mint stems as NFTs, price per-license type (personal / remix / commercial), earn royalties via on-chain payment splitter.
  • Listeners: full music app: player, library, playlists, marketplace, AI DJ, curator-resolved disputes. Wallet-native purchases. You own what you buy.
  • Agents: storefront endpoints, licensing-aware quotes, x402 HTTP payments, machine-readable purchase receipts. No account required.

โšก Key Capabilities

  • Programmable stems: AI-separated 6-stem assets (vocals, drums, bass, guitar, piano, other) as the core monetizable unit ยท Upload flow
  • x402 commerce: machine-to-machine stem purchases over HTTP with USDC settlement and structured receipts ยท x402 payments
  • MCP tools: catalog.search, stem.quote, stem.download over Streamable HTTP at /mcp ยท MCP server
  • Resonate Shows: escrow-backed fan campaigns that turn city-level demand into booking signals ยท Shows
  • AI DJ: taste-constrained agent runtime with commerce-aware recommendations ยท Agent commerce
  • Smart accounts: ERC-4337 Kernel accounts with session keys for gasless UX ยท Account abstraction
  • Marketplace: on-chain stem trading with licensing tiers and stablecoin settlement ยท Contracts
  • Community curation: dispute flows and curator-resolved content quality signals ยท Curation

See the feature catalog for the full index of implemented, partial, planned, and retired capabilities.


๐Ÿ—๏ธ Architecture

flowchart LR
  Studio["Human Studio<br>Next.js"] --> API["NestJS API<br>modular backend"]
  Agents["Agents<br>OpenAPI + MCP + x402"] --> API
  API --> Catalog["Catalog, pricing,<br>rights, library"]
  API --> Commerce["Marketplace, Shows +<br>x402 stablecoin settlement"]
  API --> Runtime["AI DJ + agent runtime"]
  API --> Ingestion["Upload + stem processing"]
  API --> Remix["Remix Studio +<br>AI generation"]
  Commerce --> Chain["Smart accounts +<br>Resonate contracts"]
  Ingestion --> Worker["Demucs worker"]
  Remix --> SAW["Stable Audio worker<br>GPU, scale-to-zero"]
  Catalog --> Data["Postgres, Redis,<br>GCS, Pub/Sub"]
  Runtime --> Data
  Worker --> Data

Resonate deploys as a full-stack music and agent-commerce system: Cloud Run services, Pub/Sub pipelines, Cloud SQL, Redis, GCS, ERC-4337 smart accounts, and a Terraform-managed GCP edge. Application CI publishes immutable images; resonate-iac applies infrastructure releases.

Resonate deployment architecture

โ†’ Application architecture ยท Deployment architecture


๐Ÿš€ Quick Start

For the full development setup guide with detailed explanations, see Getting Started.

Prerequisites

ToolInstall
Node.js 22.12+nodejs.org or nvm install 22
Dockerdocker.com/get-started
MakePre-installed on macOS/Linux; Windows: use WSL
Foundry (contracts)getfoundry.sh
# Install dependencies
npm install -g npm@11.14.1
cd contracts && ./scripts/install-deps.sh
cd ../backend && npm ci
cd ../web && npm ci --legacy-peer-deps
cd ../desktop && npm ci
cd ..

# Start infrastructure + worker + chain fork + contracts
export SEPOLIA_RPC_URL=https://sepolia.drpc.org
make dev-up
make worker-gpu
make local-aa-fork
make deploy-contracts

# Start services (separate terminals)
make backend-dev     # NestJS API on port 3000
make web-dev-fork    # Next.js on port 3001 (chain 11155111, local RPC)

Local-Only (offline fallback)

make dev-up
make worker-gpu
make contracts-deploy-local

make backend-dev     # port 3000
make web-dev-local   # port 3001 (chain 31337)

Stop & Clean

make db-reset        # Reset database
make dev-down        # Stop Postgres, Redis, Pub/Sub, Demucs worker
make local-aa-down   # Stop Anvil + Alto

๐Ÿ“– Documentation

DocumentDescription
User GuideIn-app manual at /help โ€” how to use Resonate (all personas)
Getting StartedFull development setup guide
Feature CatalogIndex of all platform capabilities
Project SpecificationVision, architecture, and roadmap
Deployment ArchitectureGCP, smart accounts, blockchain, x402 topology
Environment VariablesApp runtime and provider configuration
Local AA DevelopmentAccount abstraction setup
Demucs WorkerGPU stem separation setup
x402 PaymentsMachine-to-machine stem purchases
MCP ServerAgent tool discovery and setup
Core ContractsStem NFT and marketplace contracts
TroubleshootingCommon issues and fixes
ContributingContribution guidelines

๐Ÿ› ๏ธ Tech Stack

LayerTechnology
FrontendNext.js 15, TanStack Query, Viem/Wagmi
BackendNestJS, Prisma, BullMQ, GCP Pub/Sub, PostgreSQL
BlockchainSolidity, Foundry, ERC-4337, ZeroDev
AIDemucs (htdemucs_6s), Vertex AI
InfrastructureDocker, Redis, GCP Pub/Sub, GitHub Actions

๐Ÿ“„ License

MIT ยฉ 2024-2026