A decentralized job marketplace platform built on Solana blockchain, enabling secure and transparent freelance job postings, bidding, and payments. The platform combines the power of blockchain technology with a modern web interface to create a trustless environment for freelancers and employers.
- Blockchain-Powered: Built on Solana for fast, low-cost transactions
- Smart Contract Integration: Secure job contracts and payments
- User Authentication: Wallet-based authentication system
- Job Management: Create, browse, and manage job listings
- Profile System: Comprehensive user profiles for freelancers and employers
- Real-time Updates: Live contract and payment status tracking
- Responsive Design: Modern UI built with React and Tailwind CSS
- React.js with TypeScript
- Tailwind CSS for styling
- Web3 integration with Solana wallet adapters
- Modern component architecture
- Node.js server
- Express.js framework
- MongoDB database (assumed based on models)
- JWT authentication
- Solana Program (Smart Contract)
- Rust programming language
- Solana Web3.js for blockchain interactions
sol-freelance/
├── client/ # React frontend application
├── server/ # Node.js backend server
└── solana-program/ # Solana smart contract
- VScode
- Node.js (v18 or higher)
- Rust and Cargo
- Solana CLI tools
- MongoDB
-
Clone the repository:
git clone cd sol-freelance -
Install frontend dependencies:
cd client npm install -
Install backend dependencies:
cd ../server npm install -
Build Solana program:
cd ../solana-program cargo build -
Set up environment variables:
- Create
.envfiles in bothclient/andserver/directories - Add necessary environment variables (see
.env.examplefiles)
- Create
-
Start the frontend:
cd client npm start -
Start the backend server:
cd server npm start -
Deploy Solana program (if needed):
cd solana-program solana program deploy target/deploy/[program-name].so
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
This project is in development and should not be used in production without proper security audits and testing.