DojoPay is a decentralized task marketplace built on Solana, its a platform that connects creators with workers through instant task despensation, secure SOL payments and escrow services.
- Overview
- Features
- How It Works
- Tech Stack
- Getting Started
- API Documentation
- Deployment
- Security
- Roadmap
- Contributing
- Support
- License
DojoPay revolutionizes the gig economy by leveraging Solana blockchain for instant, secure payments. Creators can define tasks, set payments, and receive verified work submissions, while workers earn SOL by completing tasks with automatic payment verification.
Image Labeling Platform
- Task Type: Image annotation and labeling
- Workflow: Creators upload images → Workers label → System verifies → Auto-payment
- Payment: 0.1 SOL per completed task
- Verification: Automated validation of submitted labels
- Task Management: Create and manage multiple task types
- Escrow Services: Secure payment holding until task verification
- Analytics Dashboard: Track task performance and worker metrics
- Secure Payments: Automatic SOL transfers upon verification
- Task Discovery: Browse available jobs matching your skills
- Instant Payments: Receive SOL automatically upon verification
- Reputation System: Build your profile with quality work ratings
- Diverse Opportunities: Access various task types and projects
- Multi-task Support: Image labeling, text classification, data annotation, content creation, quality assurance, and research tasks
- Blockchain Integration: Non-custodial wallet connections with secure smart contracts
- Marketplace: Advanced task discovery and worker matching
- Connect Wallet: Authenticate with your Solana wallet (Phantom, Solflare, etc.)
- Define Task: Set requirements, payment amount, and verification criteria
- Deposit Funds: SOL held in escrow until task completion
- Review Submissions: Approve or reject completed work
- Auto-Payment: System releases SOL to verified workers
- Browse Tasks: Find available jobs matching your skills
- Complete Work: Submit tasks according to requirements
- Get Paid: Receive SOL automatically upon verification
- Build Reputation: Earn ratings for quality work
- Runtime: Node.js 22+
- Framework: Express.js
- Database: PostgreSQL with Prisma ORM
- Authentication: JWT + Solana Web3.js
- Storage: AWS S3
- Deployment: Render
- Framework: Next.js 14
- Language: TypeScript
- Styling: Tailwind CSS
- State Management: Zustand
- Blockchain: Solana Wallet Adapter
- Deployment: Vercel
- Network: Solana Devnet (for now)
- Wallets: Phantom, Solflare, and more
- Smart Contracts - pending: Rust-based programs (for better vault and escrow management)
- Node.js 22+
- PostgreSQL database
- Solana wallet (Phantom, Solflare, etc.)
- AWS S3 bucket (for file storage)
- Clone the repository
git clone https://github.com/kingsleycj/dojopay.git
cd dojopay- Backend Setup
cd backend
npm install
cp .env.example .env
# Configure environment variables in .env
npm run dev- Frontend Setup
cd frontend
npm install
cp .env.example .env.local
# Configure environment variables in .env.local
npm run devDATABASE_URL=postgresql://...
RPC_URL=https://api.mainnet-beta.solana.com
PRIVATE_KEY=your_wallet_private_key
JWT_SECRET=your_jwt_secret
S3_BUCKET_NAME=your_s3_bucket
S3_BUCKET_ACCESS_KEY_ID=...
S3_BUCKET_SECRET_ACCESS_KEY=...NEXT_PUBLIC_BACKEND_URL=http://localhost:3000
NEXT_PUBLIC_CLOUDFRONT_URL=https://your-cloudfront-domain.cloudfront.net/| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/user/signin |
Authenticate with Solana wallet |
| POST | /v1/user/task |
Create new task |
| GET | /v1/user/tasks |
List created tasks |
| GET | /v1/user/analytics |
View task statistics |
| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/worker/signin |
Authenticate worker |
| GET | /v1/worker/tasks |
Browse available tasks |
| POST | /v1/worker/submit |
Submit completed task |
| GET | /v1/worker/earnings |
View payment history |
- Connect your GitHub repository
- Set environment variables
- Deploy from
backenddirectory - Configure PostgreSQL database
- Connect your GitHub repository
- Set environment variables
- Deploy from
frontenddirectory - Configure custom domain (optional)
- Non-custodial: Users control their own SOL wallets
- Escrow System: Payments held until task verification
- Rate Limiting: Protection against API abuse
- Input Validation: All user inputs are sanitized
- HTTPS: Encrypted communication
- CORS: Cross-origin protection
- Multi-task type support
- Advanced verification system
- Mobile app development
- Reputation system
- Escrow smart contracts
- API v2 release
- Real-time updates
- Marketplace features
- Advanced analytics
- Enterprise solutions
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Documentation: Project Wiki
- Issues: GitHub Issues
- Discord: Community Server
Built with ❤️ on Solana