Skip to content

All-in-one Web3-powered tech collaboration platform: freelancing gigs, event management, and real-time community chat — built for Hack with Gujarat.

License

Notifications You must be signed in to change notification settings

kanikaa-3018/W3nity

 
 

Repository files navigation

W3nity - Web3 + Unity

All-in-One Tech Collaboration Platform

Demo

W3nity is a unified, Web3-enabled collaboration platform that brings together:

  • Freelancing Marketplace
  • Event Management
  • Real-Time Community Chat

W3nity lets startups, developers, and communities connect, collaborate, and transact seamlessly — on-chain or off-chain.


Table of Contents

  1. Key Features
  2. Tech Stack
  3. Architecture
  4. Getting Started
  5. Usage & Demo
  6. Roadmap
  7. Contributing
  8. License

Key Features

Module Description
Freelancing • Post & browse gigs
• Submit proposals & track status
• On-chain escrow smart contract
Event Management • Create/manage events
• Register & mint NFT tickets
• Admin dashboard & reminders
Community Chat • Public & private channels
• 1:1 direct messaging
• Media sharing & history
Web3 Integration • MetaMask wallet login
• Escrow.sol for payments
• ERC-721 minting for tickets

Tech Stack

  • Frontend
    • React + Tailwind CSS
    • Framer Motion for animations
  • Backend
    • Node.js + Express
    • MongoDB (Mongoose) for database
  • Real-Time
    • Socket.IO (WebSockets) for community chat
  • Blockchain
    • Solidity & Hardhat (local/testnet)
    • Alchemy
    • Ethers.js / Wagmi + MetaMask
  • Storage & Media
    • Cloudinary [Planned]
  • Deployment
    • Vercel (frontend) & Render (backend)

Architecture

architectureee


Getting Started

  1. Clone the repo
    git clone https://github.com/yourusername/W3nity.git
    cd W3nity
  2. Install dependencies
     #Client
     cd client && npm install
    
     # Server
     cd ../server && npm install
  3. Configure environment
    • Copy example.env to .env in both root dir, client/ and server/
    • Set your MongoDB URI , MetaMask RPC endpoint, AWS/Cloudinary keys, etc.
  # --- Server ---
  PORT= 8080
  MONGO_URI="your MongoDb URI"
  JWT_SECRET="your JWT secret"
  SEPOLIA_RPC_URL="your sepolia url"
  NFT_CONTRACT_ADDRESS="your contract address"
  STRIPE_SECRET_KEY="your stripe secret key"
  CLIENT_URL="your frontend ur"
  
  # --- Client ---
  VITE_API_URL="your backend URL"
  
  # --- Root Folder ---
  SEPOLIA_RPC_URL="your sepolia url"
  PRIVATE_KEY="your escrow id"
  MONGO_URI="your MongoDb URI"
  NFT_CONTRACT_ADDRESS="your contract address"
  1. Run locally

     # Run backend
     cd server && npm run dev
    
     # Run frontend
     cd ../client && npm run dev
    
    #Run mint Listeners 
    npx tsx events/listenMintEvents.ts
  2. (Optional) Deploy smart contracts

     cd smart-contracts
     npx hardhat run scripts/deploy.js --network localhost

Usage & Demo

Demo Video

w3nity.video.1.mp4

Screenshots

Onboarding Page
Onboarding
Wallet Connect & MetaMask Auth
Dashboard
Dashboard
Your Gateway to Freelance, Events, and Chat
Freelance Marketplace
Freelancing
Post Gigs, Submit Proposals, Escrow ETH
Event Management
Events
Create Events & Mint NFT Tickets
Community Chat
Community
Real-time Global & Private Chat
Profile Page
Profile
Track Proposals, Projects & Tickets

User Flows

Freelance Flow

  1. Connect MetaMask
  2. Post Gig
  3. Submit Proposal
  4. Deposit ETH in Escrow
  5. Deliver Work & Release Payment

Event Flow

  1. Create Event
  2. Register
  3. Mint NFT Ticket
  4. View/Manage Attendees

Chat Flow

  1. Join Public/Private Channels
  2. Send Messages
  3. Share Files & Media

Roadmap

  • Core MVP: gigs, events, chat, Web3 login, NFT Ticketing
  • User profiles & ratings
  • Admin analytics dashboard
  • Fast payments (Stripe/Razorpay)
  • AI-powered gig recommendations [TO BE DONE]
  • Mobile-responsive & PWA support [TO BE DONE]

Contributing

We welcome bug reports, feature requests, and pull requests!

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/AwesomeFeature)
  3. Commit your changes (git commit -m 'Add AwesomeFeature')
  4. Push to the branch (git push origin feature/AwesomeFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for details.


Visitor Count

About

All-in-one Web3-powered tech collaboration platform: freelancing gigs, event management, and real-time community chat — built for Hack with Gujarat.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 89.7%
  • JavaScript 8.8%
  • Other 1.5%