Important
This project is currently under active development as part of the Nervos Community Catalyst initiative and is not yet ready for production use.
A purpose-built open-source gamified engagement platform for the CKB ecosystem, designed to transform community engagement from scattered, ad-hoc efforts into a structured, rewarding, and measurable system that drives participation, incentivizes real contributions, and encourages ecosystem growth.
CKBoost directly supports the goals of the Nervos Community Catalyst initiative by providing the technical backbone for:
- Structured Engagement: Transform random community efforts into organized campaigns with clear goals
- Verifiable Contributions: Implement "proof of participation" for all types of community activities
- Fair Rewards: Distribute on-chain rewards transparently based on actual contributions
- Ecosystem Growth: Drive both off-chain engagement and on-chain activity through gamification
CKBoost addresses key challenges in community management:
- Inclusive Participation: Reward community members who don't have directly transferable skills for formal tracks
- Synergized Effort: Coordinate community action across social media, off-chain, and on-chain platforms
- Fun & Incentivized: Create enthusiasm for participation through gamification and rewards
- On-Chain Activity: Leverage CKB features and encourage more blockchain interaction
- Campaign & Quest Management: Multi-quest campaigns with on-chain configuration, Nostr-backed submission storage, and admin/staff dashboard for review/approval/reward distribution flows
- On-Chain Points & Badges: Points UDT and achievement scripts with reward history/leaderboard services tracing mint transactions for transparent payouts;
- Gamification Elements: Streak bonus and achievement validators in serverless functions, and leaderboard;
- Anti-Sybil Verification: Telegram login + on-chain binding live in the identity flow, with DID/KYC and other methods on the roadmap
- Community Tipping: Peer recognition system with democratic approval flow and automated payouts from both community treasury and personal tippers;
- Comprehensive Dashboards: Platform admin (protocol + approvals), campaign admin (staff + quest reviews), contributor dashboard/leaderboard/profile/tipping views
CKBoost/
โโโ dapp/ # Next.js frontend application
โ โโโ app/ # App Router pages and layouts
โ โโโ components/ # Reusable UI components
โ โโโ lib/ # Business logic and data management
โ โ โโโ types/ # TypeScript type definitions
โ โ โโโ mock/ # Development mock data
โ โ โโโ ckb/ # Blockchain integration layer
โ โ โโโ providers/ # React context providers
โ โ โโโ services/ # Data service abstraction
โ โโโ netlify/functions/ # Serverless APIs (social interactions, achievements, streaks, staff approvals, Telegram auth)
โ โโโ ... # Standard Next.js structure
โโโ contracts/ # Smart contracts
โ โโโ contracts/ # Individual contract implementations
โ โ โโโ ckboost-achievement-type/ # Achievement management logic
โ โ โโโ ckboost-campaign-type/ # Campaign management logic
โ โ โโโ ckboost-funding-lock/ # Secure fund vaults
โ โ โโโ ckboost-protocol-type/ # Governance
โ โ โโโ ckboost-protocol-lock/ # Protocol governance
โ โ โโโ ckboost-user-type/ # Submission, verification, and social bindings
โ โ โโโ ckboost-points-udt/ # Points UDT for rewards
โ โ โโโ ckboost-tipping-type/ # tipping management
โ โ โโโ ckboost-shared/ # Common utilities
โ โโโ tests/ # Integration tests
โโโ docs/ # Documentation and specifications
โ โโโ recipes/ # Transaction skeleton definitions
โ โโโ *.prd.txt # Product requirements documents
โโโ schemas/ # Molecule schema definitions
- Node.js 18+ with pnpm
- Rust toolchain for contract development
- CKB Node for blockchain interaction (development/testnet)
-
Clone the repository
git clone https://github.com/Alive24/CKBoost.git cd CKBoost -
Start the application (dApp and serverless functions)
Set
dapp/.env.local(RPC/indexer URLs,NEXT_PUBLIC_SSRI_EXECUTOR_URL,NEXT_PUBLIC_PROTOCOL_TYPE_ARGSfromdeployment-summary.mdordeployments.json,NEXT_PUBLIC_TELEGRAM_BOT_USERNAME, etc.) usingdapp/DEPLOYMENT.mdas a reference.cd dapp netlify devThe application will be available at
http://localhost:9003(depending on the port you set indapp/netlify.toml) -
Build smart contracts (optional for frontend development)
cd contracts make build
CKBoost implements a new pattern of decentralization for dApps:
- Serverless Functions Backend: Serverless functions in-repo shipped alongside the dApp; no need to host them on private servers.
- Transparent Infrastructure: All modules and code are open-sourced, and complete for anyone to deploy its own instance;deployment records/logs publicly available for transparency and auditability.
- Decentralized Data Storage: CKB Cell data for all on-chain states; Nostr relays for metadata and content; local cache in serverless functions for performance optimization.
- Framework: Next.js 15 with App Router
- Styling: Tailwind CSS with shadcn/ui components
- State Management: React Context with CKB CCC integration
- Wallet Integration: @ckb-ccc/connector-react for universal wallet support
- Data Layer: Abstracted service layer supporting mock and blockchain data with Nostr-backed off-chain submissions and social interactions
- ckboost-protocol-type: Governance & Points UDT minting
- ckboost-protocol-lock: Protocol governance and treasury management
- ckboost-campaign-type: Campaign logic and quest management
- ckboost-funding-lock: Secure vaults for campaign funds
- ckboost-user-type: Submission, verification, and social bindings
- ckboost-points-udt: Points UDT for rewards
- ckboost-tipping-type: Tipping management
- Infrastructure: Netlify Functions in this repo (social interactions, streak/achievement validators, Telegram auth, staff approvals, reward history) with optional Cloudflare Worker deployment
- Hosting: By campaign sponsors and community members
- Purpose: Indexing, proof validation, staff approvals, and coordination
- Critical State: CKB Cell data for all on-chain states and reference to off-chain data;
- Non-Critical Data: Nostr relays for metadata and content;
- Performance: local cache in serverless functions for performance optimization.
Define quests โ Fund campaign (CKB/UDT) โ Assign staff reviewers โ Get admin approval via protocol dashboard โ Launch with Connected Type IDs โ Monitor submissions/approvals โ Distribute rewards
Connect wallet โ Complete Telegram verification โ Browse campaigns โ Complete tasks โ Submit proof (stored via Nostr) โ Pass staff approval โ Claim rewards/points โ Earn badges & ranking
Propose tip with event link โ Receive peer approvals โ On-chain funding + explorer link โ Permanent profile record with Nostr comments/likes
Identity verification โ Campaign sponsor verification โ Protocol/campaign approval โ Staff approvals + quest reviews โ Base campaign creation
- AMA Boost: Points for questions, shares, and Nervos discussion amplification
- Knowledge Boost: Share and summarize Knowledge Base articles
- On-Chain Quests: Lock CKB for iCKB, add DEX liquidity, interact with DeFi
- Community Governance: Engage with proposals and provide feedback
- Escrow Protection: Funding lock scripts protect all escrowed assets
- Multi-Signature: Support for high-value campaign management
- Time Locks: Campaign duration enforcement and deadline management
- Gradual Rollout: Small initial contract funds with progressive scaling and stricter transaction input validation across core scripts
- Locked Rewards: Rewards remain locked until verification passes
- Multi-Method Verification: Telegram, DID, KYC, and manual review options
- Reputation System: Build trust through consistent participation
- โ Next.js scaffold with CCC wallet integration
- โ Visual and interaction prototyping
- โ Smart contract development for core scripts (campaign, user, protocol, funding, points, tipping, achievement all implemented and testnet-deployed)
- โ Campaign & quest creation flows (platform/campaign admin dashboards, Nostr-backed submissions, staff approvals)
- ๐ Points UDT and reward distribution (UDT deployed with reward history + leaderboard services; automated distribution in tuning)
- ๐ Expanded verification methods (Telegram bot + on-chain binding live; DID/KYC next)
- โ Leaderboards and user profiles (dashboard/profile pages wired to chain data and reward history)
- ๐ Gamification features (streaks, multipliers, badges) with streak bonus + achievement validators shipped
- โ Tipping system with peer approvals (tipping proposals, approvals, Nostr comments/likes, explorer links)
- โ Admin dashboard and analytics (protocol + campaign admin consoles, staff review queues, tipping stats)
- ๐ Deploy test campaigns with real users
- ๐ Automated on-chain verification (transaction validation and proxy handling added; end-to-end automation pending)
- ๐ Documentation and onboarding guides (deployment summary + Netlify/Telegram setup in place; broader docs in progress)
- ๐ Final testing and optimization
- ๐ Community feedback integration
This project is funded by the CKB Community Fund DAO:
- Total Grant: $20,000 USD
- Payment Structure: 10% upfront, 90% across 3 milestones
- Timeline: 3 months from commencement
- Purpose: Support design, development, and deployment of CKBoost
We welcome contributions from the community! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes following the coding standards
- Add tests for new functionality
- Submit a pull request with clear description
- TypeScript: Strict type checking enabled
- Code Quality: ESLint/Prettier for formatting
- Commits: Conventional commit format
- Testing: High coverage for critical paths
- Campaign Creation Guide: How to launch engaging campaigns
- Quest Participation: How to complete quests and earn rewards
- Verification Guide: Understanding identity requirements
- Tipping System: How to recognize exceptional contributions
- Architecture Overview: Understanding the decentralized design
- Contract Interface: Smart contract specifications
- API Documentation: Decentralized service APIs
- Integration Guide: Adding CKBoost to your project
- Grant Proposal
- UI/UX Demo
- Technical Specifications
- Transaction Recipes
- Deployment Summary
- Netlify/Telegram Deployment Guide
cargo bloat --release --target riscv64imac-unknown-none-elf --crates --package ckboost-campaign-type
# Automatic deployment on push to main branch
git push origin mainNetlify Functions (Telegram auth, staff approvals, streak/achievement validators, social interactions, reward history) deploy alongside the frontend build; use netlify dev to run them locally.
# Serverless APIs (Netlify Functions) shipped in this repo
cd dapp
netlify dev --functions netlify/functions
# Optional: deploy Cloudflare Worker variant
# cd services
# wrangler deploycd contracts
make deploy-testnet # Deploy to CKB testnet
make deploy-mainnet # Deploy to CKB mainnetType IDs and code hashes are tracked in deployments.json; copy the protocol type args into NEXT_PUBLIC_PROTOCOL_TYPE_ARGS for the dApp.
- GitHub Issues: Report bugs or request features
- Discussions: Join the conversation
- Nervos Talk: Community discussions
- Documentation: Full documentation
- Nervos Community Catalyst for sponsoring this initiative
- CKB Community Fund DAO for funding support
- Nervos Foundation for the innovative CKB blockchain
- Community Contributors who make this project possible
This project is licensed under the MIT License - see the LICENSE file for details.
Built with โค๏ธ by Alive24 for the Nervos Community