All projects

Casamigos

Revolutionary IP Management System

DeFi & Tokenization Risk & Compliance Privacy Prediction Markets Thirdweb

What it is

What it is
Casamigos is a full-stack IP management platform on-chain. Creators can:

  • Register IP as NFTs on Base (Sepolia)
  • Mint programmable licenses
  • Collect and distribute revenue
  • Monitor for infringement with AI
    The stack includes: React frontend, Express backend, Solidity contracts (ModredIP, ERC-6551), IPFS for content, Yakoa for infringement detection, and Chainlink CRE for automated workflows.

How it works

  • On-chain: The ModredIP contract stores IP assets (beneficiary, IP hash, metadata). Each asset can have at most one license (royalty share, duration, commercial terms). Revenue is paid to the IP asset and split automatically; disputes can go to on-chain arbitrators.
  • App & backend: Users connect a wallet, register IP (with optional IPFS upload), mint licenses from templates, pay revenue, and claim royalties. The backend enforces one-license-per-IP and can register IP with Yakoa for infringement monitoring.
  • Chainlink CRE: A cron workflow (1) registers an IP on-chain, (2) mints a license, and (3) registers that IP with Yakoa via the backend. An EVM log trigger listens to contract events and appends them to a JSONL file via the backend for auditing.

What problem it solves

  1. Fragmented IP management → One place to register, license, monetize, and protect IP with on-chain records.
  2. Inefficient licensing → Programmable, on-chain terms and automated royalty distribution.
  3. Poor enforcement → AI-powered infringement detection (Yakoa) and optional dispute resolution.
  4. Revenue leakage → Direct revenue to IP assets and automatic royalty splitting.
  5. Automation and trust → Chainlink CRE allows scheduled/event-driven registration and licensing with reports verified by the Chainlink Forwarder.

How it Works

How is it built?

  • Frontend (app/): React 18 + TypeScript, Vite, Thirdweb for wallet/Web3. IP registration (optional IPFS via Pinata), license minting from templates, revenue payments, royalty claims. Uses deployed_addresses.json and a shared ABI.
  • Backend (backend/): Express (Node + TypeScript), Viem for Base Sepolia. REST APIs for IP registration, license minting, infringement (Yakoa), CRE event storage (/api/cre-events), and Yakoa registration after CRE (/api/register-ip-yakoa). Enforces one license per IP; retries and tx recovery for reliability.
  • Contracts (contracts/): Solidity on Base. ModredIP holds IP assets, licenses (one per IP), revenue, royalties, disputes, arbitrators; CRE-only registerIPFor / mintLicenseByProxy behind onlyCREProxy. ModredIPCREConsumer implements IReceiver, validates the Forwarder, decodes reports (0 = register IP, 1 = mint license), calls ModredIP. ERC-6551 for token-bound accounts.
  • CRE workflows (cre-workflows/ip-registration-workflow/): TypeScript with @chainlink/cre-sdk and Bun. Cron: HTTP GET → two writeReport calls (register IP, mint license) → POST to backend for Yakoa. EVM log trigger: subscribe to events, decode or store as “Unknown”, POST to /api/cre-events (append to cre-events.jsonl).
  • Deployment: Hardhat Ignition for ModredIP and consumer; Forwarder in ignition/constants.ts; full-stack scripts set ModredIP.setCREProxy(consumer).

Links

Created by

  • Opeyemi Afolabi