The CreativeIP Platform is a decentralized intellectual property management system that combines multiple blockchain technologies to provide seamless IP registration, verification, and cross-chain licensing. The platform integrates Story Protocol, Yakoa verification, deBridge cross-chain payments, and Tomo wallet to create a comprehensive IP ecosystem.
- Purpose: On-chain IP registration and NFT minting
- Network: Story Aeneid Testnet (Chain ID: 1315)
- Key Features:
- IP asset registration with metadata
- NFT minting for IP ownership
- Licensing framework for commercialization
- Royalty distribution system
- Purpose: AI-powered content authenticity verification
- Integration: REST API for verification requests
- Key Features:
- Image authenticity detection
- Deepfake detection
- Content originality verification
- Verification badges and scoring
- Purpose: Multi-chain payment infrastructure for IP licensing
- Supported Networks: Ethereum, Polygon, BSC, Arbitrum, Optimism, Base, Sepolia
- Key Features:
- Cross-chain token transfers
- License payment processing
- Multi-chain fee estimation
- Transaction monitoring
- Purpose: User-friendly wallet with social login
- Integration: EVM kit with viem/ethers.js signing
- Key Features:
- Google/social login integration
- EVM-compatible signing
- Story Protocol transaction support
- Multi-chain connectivity
User Upload → Content Processing → Yakoa Verification → Story Protocol Registration
│ │ │ │
▼ ▼ ▼ ▼
┌─────────┐ ┌──────────┐ ┌─────────────┐ ┌─────────────┐
│Frontend │ │ Backend │ │ Yakoa │ │ Story │
│Upload │──►│IPFS/ │───────►│Verification │────────►│ Protocol │
│Component│ │Metadata │ │ API │ │Registration │
└─────────┘ └──────────┘ └─────────────┘ └─────────────┘
License Request → Payment Processing → Cross-Chain Transfer → License Activation
│ │ │ │
▼ ▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Frontend │ │ deBridge │ │Cross-Chain │ │ Story │
│License Modal│──►│ Payment │─────►│ Transfer │─────►│ Protocol │
│ │ │ Service │ │ Monitoring │ │ Licensing │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
story/
├── frontend/ # Next.js React Frontend
│ ├── src/
│ │ ├── app/ # Next.js App Router Pages
│ │ │ ├── dashboard/ # User Dashboard
│ │ │ ├── upload/ # Asset Upload Flow
│ │ │ ├── gallery/ # Asset Gallery
│ │ │ ├── search/ # Asset Search & Discovery
│ │ │ └── models/ # AI Model Gallery
│ │ ├── components/ # React Components
│ │ │ ├── AssetUpload/ # Upload Components
│ │ │ ├── Search/ # Search Components
│ │ │ ├── CrossChain/ # deBridge Components
│ │ │ └── Verification/ # Yakoa Components
│ │ ├── hooks/ # React Hooks
│ │ │ ├── useStoryProtocol.ts # Story Protocol Integration
│ │ │ ├── useCrossChainPayment.ts # deBridge Integration
│ │ │ └── useYakoaVerification.ts # Yakoa Integration
│ │ ├── config/ # Configuration Files
│ │ │ ├── wagmiConfig.ts # Wallet Configuration
│ │ │ ├── tomoConfig.ts # Tomo Wallet Config
│ │ │ └── deBridgeConfig.ts # deBridge Configuration
│ │ └── utils/ # Utility Functions
│ └── package.json
├── backend/ # Express.js Backend
│ ├── src/
│ │ ├── config/ # Backend Configuration
│ │ │ ├── firebase.ts # Firebase Admin Setup
│ │ │ ├── elasticsearch.ts # Search Configuration
│ │ │ └── yakoa.ts # Yakoa API Configuration
│ │ ├── utils/ # Backend Utilities
│ │ │ ├── assetProcessor.ts # Asset Processing
│ │ │ ├── searchService.ts # Elasticsearch Integration
│ │ │ └── yakoaService.ts # Yakoa API Service
│ │ └── index.ts # Express Server
│ └── package.json
- Node.js 18+ and npm
- Git
- Access to the following services:
- Story Protocol Aeneid Testnet
- Yakoa API credentials
- deBridge API access
- Firebase project
- Elasticsearch instance
# Clone the repository
git clone https://github.com/0xSY3/storyfinal.git
cd storyfinal
# Install frontend dependencies
cd frontend
npm install
# Install backend dependencies
cd ../backend
npm install# deBridge Configuration
NEXT_PUBLIC_DEBRIDGE_API_KEY=your_debridge_api_key
NEXT_PUBLIC_DEBRIDGE_ENVIRONMENT=testnet
# Story Protocol
NEXT_PUBLIC_STORY_RPC_URL=https://aeneid.rpc.story.foundation
NEXT_PUBLIC_STORY_CHAIN_ID=1315
# Backend API
NEXT_PUBLIC_BACKEND_URL=http://localhost:3001# Story Protocol Configuration
STORY_PRIVATE_KEY=your_story_private_key
STORY_RPC_URL=https://aeneid.rpc.story.foundation
STORY_NFT_CONTRACT=0x322813Fd9A801c5507c9de605d63CEA4f2CE6c44
# Yakoa API Configuration
YAKOA_API_KEY=your_yakoa_api_key
YAKOA_API_URL=https://api.yakoa.com
# Firebase Configuration
FIREBASE_PROJECT_ID=your_firebase_project_id
FIREBASE_PRIVATE_KEY=your_firebase_private_key
FIREBASE_CLIENT_EMAIL=your_firebase_client_email
# Elasticsearch Configuration
ELASTICSEARCH_URL=your_elasticsearch_url
ELASTICSEARCH_API_KEY=your_elasticsearch_api_key# Start the backend server
cd backend
npm run dev
# Start the frontend (in a new terminal)
cd frontend
npm run devThe application will be available at http://localhost:3000
The platform uses Tomo wallet's EVM kit for signing Story Protocol transactions. Based on Tomo team's guidance, we use viem and ethers.js APIs for custom transaction signing:
The platform supports cross-chain payments for IP licensing using deBridge's DLN protocol:
Current Status: Enhanced simulation mode with testnet support. Real API integration available when SDK methods are verified.
- Testnets: Ethereum Sepolia, Polygon Mumbai, Arbitrum Goerli
- Story Protocol: Story Aeneid Testnet
- USDC: Across all supported networks
- USDT: Primary stablecoin for licensing
- Native Tokens: ETH, MATIC, BNB, AVAX
- Estimation: Get cross-chain payment quote
- Order Creation: Create DLN order for license payment
- Monitoring: Track payment status across chains
- Completion: Activate license upon payment confirmation
- Upload: Asset uploaded to platform
- Preprocessing: Extract metadata and features
- API Call: Send to Yakoa verification service
- Analysis: AI-powered authenticity check
- Result: Verification score and badge assignment
- Image Authenticity: Detect manipulated images
- Deepfake Detection: Identify AI-generated faces
- Content Originality: Check for duplicates
- Metadata Validation: Verify creation details
POST /api/assets/upload # Upload asset
GET /api/assets/search # Search assets
GET /api/assets/:id # Get asset details
POST /api/assets/:id/verify # Request verification
POST /api/story/register # Register IP asset
GET /api/story/assets/:id # Get Story Protocol asset
POST /api/story/license # Create license
POST /api/payments/estimate # Estimate cross-chain payment
POST /api/payments/create # Create payment order
GET /api/payments/:id/status # Check payment status
POST /api/verification/submit # Submit for verification
GET /api/verification/:id # Get verification status
POST /api/verification/batch # Batch verification
For safe testing, the platform is configured to use testnets:
- Sepolia: Primary Ethereum testnet
- Polygon Mumbai: Polygon testnet
- Arbitrum Goerli: Arbitrum testnet
- Test Tokens: USDC/USDT on respective testnets
- Network: Story Aeneid Testnet
- Chain ID: 1315
- RPC: https://aeneid.rpc.story.foundation
- Faucet: Available for SIP tokens
- Sepolia ETH: Use Sepolia faucet
- Test USDC/USDT: Use respective testnet faucets
- Story SIP: Use Story testnet faucet
- Other Testnets: Use official faucets for each network
To enable actual deBridge API calls (currently in enhanced simulation mode):
-
Set Environment Variables:
NEXT_PUBLIC_DEBRIDGE_API_KEY=your_api_key NEXT_PUBLIC_DEBRIDGE_ENVIRONMENT=testnet ``` k
-
Update Service: In
deBridgeService.ts, setREAL_DEBRIDGE_ENABLED = true -
Verify API Methods: Test the deBridge SDK methods and update the service calls accordingly
- Frontend Components: Add to
/frontend/src/components/ - API Hooks: Create in
/frontend/src/hooks/ - Backend Routes: Add to
/backend/src/ - Configuration: Update config files as needed
- TypeScript: Strict mode enabled
- ESLint: Configured for Next.js
- Prettier: Auto-formatting enabled
- Imports: Use absolute imports with
@/prefix
# Frontend testing
cd frontend
npm run test
# Backend testing
cd backend
npm run test
# Linting
npm run lintFor technical support:
- Check console logs for error details
- Verify environment configuration
- Test with smaller files first
- Contact development team with specific error messages
This project is licensed under the MIT License - see the LICENSE file for details.

