Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web3 Job Marketplace

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.

🚀 Features

  • 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

🛠 Tech Stack

Frontend

  • React.js with Vite
  • Tailwind CSS for styling
  • Web3 integration with Solana wallet adapters
  • Modern component architecture

Backend

  • Node.js server
  • Express.js framework
  • MongoDB database (assumed based on models)
  • JWT authentication

Blockchain

  • Solana Program (Smart Contract)
  • Rust / Anchor escrow initialization
  • Solana Web3.js for blockchain interactions

🏗 Project Structure

hireonchain/
├── app/           # React frontend application
├── server/           # Node.js backend server
└── solana-program/   # Solana smart contract

🚦 Getting Started

Prerequisites

  • VScode
  • Node.js (v18 or higher)
  • Anchor and Cargo
  • Solana CLI tools
  • MongoDB

Installation

  1. Clone the repository:

    git clone 
    cd hireonchain
  2. Install frontend dependencies:

    cd app
    npm install
  3. Install backend dependencies:

    cd ../server
    npm install
  4. Build Solana program:

    cd ../solana-program
    cargo build
  5. Set up environment variables:

    • Create .env files in both app/ and server/ directories
    • Add necessary environment variables (see .env.example files)

Running the Application

  1. Start the frontend:

    cd app
    npm run dev
  2. Start the backend server:

    cd server
    npm start
  3. Deploy Solana program (if needed):

    cd solana-program
    solana program deploy target/deploy/[program-name].so

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

📋 Implementation Status

✅ Completed Phases

Phase A: Component Integration - Updated all major components to support blockchain data fetching and dual-view UI

Phase B: Contract Method Wrappers - Implemented high-level contract operation interface

📦 Ready for Next Phases

Phase C: Devnet Deployment - Deploy to Solana devnet (awaiting faucet funding) Phase D: Phantom Testing - End-to-end validation workflow

📚 Documentation

🔑 Key Endpoints

  • Frontend: http://localhost:5173
  • Backend API: http://localhost:5000
  • MongoDB: mongodb://127.0.0.1:27017/hireonchain
  • Program ID: Hzmfuj1scfA4UWNsKu82MopCsrvUEBGfeAtB79xYfXzK
  • Explorer: Solscan Devnet

🧪 Testing

Current Environment

  • Cluster: Solana Devnet
  • Wallet: Phantom (recommended)
  • Database: MongoDB (local or cloud)

Test Workflows

See Step D Guide for comprehensive testing procedures including:

  • Wallet connection validation
  • Job creation (backend & blockchain)
  • Job browsing (dual data sources)
  • Dashboard verification
  • Error scenario handling
  • Performance benchmarking

🚀 Quick Start (After Prerequisites)

# Terminal 1: Backend
cd server && npm install && npm start

# Terminal 2: Frontend
cd app && npm install && npm run dev

# Terminal 3: Solana Logs (WSL)
cd solana-program && solana logs Hzmfuj1scfA4UWNsKu82MopCsrvUEBGfeAtB79xYfXzK --url devnet

Then:

  1. Open http://localhost:5173 in browser
  2. Install Phantom wallet extension
  3. Configure for Devnet
  4. Connect wallet
  5. Create job to test blockchain integration

🔍 Troubleshooting

Issue Solution
"No actual database connection" Ensure MongoDB is running and MONGO_URI is set in server/.env
"Wallet not connected" Install Phantom, configure for Devnet, refresh page
"Program not found" Verify Program ID matches deployment, check cluster setting
"Insufficient funds" Use devnet faucet to airdrop SOL to wallet

See more in Troubleshooting Guide

📞 Support

For issues or questions:

  1. Check the comprehensive guides in /STEP_*_GUIDE.md
  2. Review Implementation Roadmap for architecture
  3. Check Solana Devnet logs: solana logs [program-id] --url devnet
  4. View transactions on Solscan

⚠️ Disclaimer

This project is in development and should not be used in production without proper security audits and testing. Use only on Solana Devnet for testing purposes.

About

Solana Freelance Platform Connect, Work, and Get Paid with Crypto A decentralized freelance marketplace powered by Solana blockchain. Find work, hire talent, and make secure payments with SOL

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages