BlockCreative is a platform that connects scriptwriters with producers, leveraging blockchain technology for secure transactions and AI for script analysis.
- Authentication: Connect with blockchain wallet or email/social login via Reown
- User Roles: Writer and Producer roles with different permissions and workflows
- Project Management: Producers can create, fund, and manage script acquisition projects
- Script Submissions: Writers can submit scripts to projects with AI-powered analysis
- Blockchain Integration: NFT minting for script ownership, escrow for secure payments
- AI Analysis: Gemini AI integration for script quality and marketability analysis
- Frontend: Next.js with React components
- Backend: Next.js API routes
- Database: MongoDB
- Authentication: NextAuth.js with Reown
- Blockchain: Lisk Sepolia Testnet
- AI: Google Gemini Pro API
- Smart Contracts: Custom NFT and escrow contracts
- Node.js 18+ and npm
- MongoDB instance
- Lisk Sepolia Testnet connection
- Google Gemini API key
-
Clone the repository:
git clone https://github.com/yourusername/blockcreative.git cd blockcreative -
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env.local
Then edit
.env.localwith your own values. -
Start the development server:
npm run dev
-
Open http://localhost:3000 in your browser.
-
Check the test page to verify everything is working:
http://localhost:3000/test
If you have issues connecting to MongoDB, the application is designed to fall back to mock data for development purposes. You can see the connection status on the test page at /test.
To ensure the MongoDB connection works:
- Make sure your MongoDB URI in
.env.localis correct - Check that your IP address is whitelisted in your MongoDB Atlas settings
- Verify your database username and password
If you experience issues with CSS not loading or seeing many 404 errors for CSS files in the console:
-
Disable the experimental
optimizeCssfeature innext.config.js:experimental: { optimizeCss: false, // other settings... }
-
Clean the
.nextbuild directory:rm -rf .next
-
Restart the development server:
npm run dev
The platform utilizes the following smart contracts:
- ScriptNFT: ERC-721 contract for NFT representation of script ownership
- ProjectRegistry: Manages project creation and lifecycle
- EscrowManager: Handles fund escrow and payment processing
- PlatformFeeManager: Manages platform fees (3%)
See API-DOCUMENTATION.md for detailed API endpoints.
See BlockCreativeArchitecture.md for detailed architecture documentation.
- Connect wallet and complete writer onboarding
- Browse available projects
- Submit scripts to projects
- Receive AI analysis of script
- Update submissions based on feedback
- Receive payment when scripts are purchased
- Transfer NFT ownership to producer
- Connect wallet and complete producer onboarding
- Create projects with requirements and budget
- Fund projects through blockchain escrow
- Review and provide feedback on submissions
- Purchase scripts and receive NFT ownership
- Mint NFTs for purchased scripts
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.