Inspiration

The inspiration for NearGigs came from the challenges freelancers and job seekers face in the growing Web3 space. Many talented individuals struggle to find reliable opportunities and secure their earnings in decentralized environments. We envisioned a platform that ensures freelancers and job posters can connect safely while working in a trustless environment.

Imagine a freelancer with valuable skills struggling to trust clients on traditional platforms. With NearGigs, we aim to provide peace of mind, ensuring both talents and clients are protected by smart contracts and decentralized escrows. This guarantees that payments are secured until the job is completed to satisfaction, fostering a safer, more reliable work ecosystem for everyone involved.

Problem We Are Solving

In the decentralized Web3 space, freelancers and clients face multiple challenges:

  • Trust & Security: Freelancers struggle with securing payments for completed jobs, while clients are uncertain about paying upfront.
  • Lack of Reliable Platforms: There are few platforms that specifically cater to Web3 talent and freelance opportunities, making it difficult for skilled individuals to find relevant jobs.
  • Inefficient Workflow: Managing jobs, tracking milestones, and ensuring timely payments are cumbersome without a secure and automated process.

Solution We Are Providing

NearGigs offers a comprehensive solution:

  • Escrow-Based Payments: With smart contracts, payments are held in escrow and only released when the job is completed, ensuring security for both freelancers and clients.
  • Decentralized Marketplace: A platform tailored for Web3 talents, connecting freelancers to clients with relevant opportunities, whether full-time jobs or freelance gigs.
  • Streamlined Job Management: Our decentralized system allows both parties to track the status of jobs and payments, ensuring a transparent and efficient workflow from start to finish.

What it does

NearGigs is a decentralized platform that connects freelancers and clients in the Web3 space. Here's what it offers:

  • Find Jobs & Talents: Freelancers can explore full-time and freelance job opportunities posted by clients, while clients can post job listings and search for the right talent.
  • Secure Payments: NearGigs integrates smart contracts to ensure that funds are securely held in escrow. Payments are only released when the job is completed, offering security to both clients and freelancers.
  • Tailored User Experience: Both freelancers and clients have personalized dashboards—freelancers can apply for gigs, while clients can manage job listings and track the status of work. Job & Gig Workflow Management: From job posting to completion, both parties can track the workflow through a decentralized system, ensuring transparency and trust.

How we built it

  • Front-End: Built with React for a responsive, dynamic user experience.
  • Back-End: Powered by Node.js, Express, and MongoDB for handling off-chain data, ensuring robust data storage and seamless integration with the UI.
  • Blockchain Integration: Developed a smart contract on NEAR protocol to manage job postings, escrow, and secure fund releases upon job completion.
  • Governance: Our DAO is driven by NGIG tokens, empowering the community to make platform decisions.

Challenges we ran into

Challenges Faced in Integrating Near Blockchain Packages with React (create-react-app)

  • Package Compatibility: Near blockchain packages have issues with create-react-app due to Webpack limitations, requiring complex configurations that are hard to manage.
  • Module Errors: Common issues like 'Buffer is not defined' occurred, as React isn't equipped for handling node-specific modules used by blockchain packages.
  • Polyfill and Build Issues: Attempts to manually add polyfills or use react-app-rewired only partially worked. The build sizes also became too large, reducing performance.
  • Our choosed react libraries is running into these errors because blockchain libraries like NEAR's @near-js/wallet-account are originally designed to run in Node.js environments. They depend on core modules like crypto and http, which are not natively available in the browser.

Methods We Tried

  • Manual Polyfills: installing specific browser-compatible versions of these modules (crypto-browserify, stream-http, etc.) and modifying Webpack configuration (e.g., resolve.fallbackAdded polyfills for Node.js modules like Buffer and crypto, but the problems persisted.
  • React-app-rewired: Used it to adjust Webpack without ejecting, but it wasn’t a full solution.
  • Ejection & Configuration Changes: Ejecting create-react-app led to a complex setup, making future development harder.
  • Downgrading Libraries: Downgrading blockchain packages helped briefly, but it broke other functionality.

Why We Should Move to Next.js

  • Optimization & Flexibility: Next.js provides better optimization and easier handling of large blockchain packages. It allows server-side logic and gives more control over Webpack configurations.
  • Server-Side Rendering (SSR): SSR makes it easier to handle blockchain interactions that React’s client-side setup struggles with.
  • Proven Stability: Examples of other Near DApps working well on Next.js show it's a more stable and efficient framework for blockchain projects.

Why Migrating to Next.js Now is Challenging

  • Reconfiguration: Migrating involves adjusting modules and packages, which will take significant time. Backend integration and API calls also need refactoring to match Next.js' structure.
  • Routing & Component Changes: Next.js uses a different routing system, meaning we’d need to refactor current components and routes, which isn’t feasible under tight deadlines.
  • Time Constraints: With little time left, a full migration risks destabilizing our progress.

Post-Hackathon Migration Plan Next.js is the best framework for our DApp due to its better performance and SSR capabilities. We couldn’t migrate during the hackathon because of the extensive changes required, but we are committed to migrating the project to Next.js right after, ensuring improved scalability and blockchain support.

Accomplishments that we're proud of

  • Responsive UI & User-Specific Navigation: Built a dynamic, responsive UI that adjusts based on user roles (freelancer, customer, or both). Custom side navigation and top navigation views ensure that freelancers, customers, and shared users have personalized, intuitive access.

  • Comprehensive Account Management: Integrated features for user registration, login, logout, and profile setup. Freelancers and customers have access to tailored profile management, including password changes and individualized navigation views.

  • Job and Gig Posting Workflow: Enabled seamless job and gig creation for customers, including distinct interfaces for full-time and freelance job postings. Freelancers can browse and apply to jobs, while customers can track posted gigs, organized by status (published, drafts, and categorized views) in their dashboards.

  • Interactive Application & Offer Tracking: Established an application submission and tracking system for freelancers applying to jobs and customers purchasing gigs. Applications display directly in the chat interface, allowing users to monitor status changes from application to offer, deposit, in-progress, and completion. Status toggles are intuitively placed and blockchain-integrated, automating payment and status progression.

  • Decentralized Governance: Developed a DAO utilizing our NGIG governance token, empowering our community to contribute to platform decisions.

  • Smart Contract Integration: Successfully deployed a NEAR-based smart contract that manages the job and gig workflow, implementing escrow functionality to securely release funds upon job or gig completion.

What we learned

  • Integration Challenges with React: We learned about the complexities of integrating NEAR blockchain packages with React, especially within the limitations of a create-react-app setup. This pushed us to explore alternative frameworks and gave us insights into the importance of framework compatibility when building decentralized applications.

  • Blockchain & Escrow Functionality: Implementing smart contracts and escrow functionality taught us the value of secure, automated payment flows. Understanding how decentralized systems handle workflows, such as job application and fund release, was crucial to building a robust dApp.

  • Optimizing User Experience: Building a dynamic user experience tailored to different roles (freelancers and customers) allowed us to refine how we structure navigation and application flows, leading to a more intuitive interface and better user engagement.

What's next for Neargigs

  • Migrating to Next.js: We plan to migrate our dApp to Next.js, which offers better server-side rendering, improved performance, and better compatibility for NEAR blockchain packages. This will allow us to seamlessly integrate our smart contracts and optimize both front-end and back-end functionalities.

  • Cross-Chain Payments and BTC Integration: We’re excited to expand our platform to offer payment options in BTC, allowing freelancers and clients greater flexibility. Using NEAR’s Chain Signatures technology, we plan to enable cross-chain interactions, making it possible for NEAR accounts and contracts to seamlessly interact with Bitcoin

  • Smart Contract Enhancements: We will enhance our smart contract to include more advanced features for the gig and job workflow, such as automated dispute resolution, milestone payments, and real-time notifications, ensuring the smooth operation of the escrow and payment processes.

  • Further Decentralization: We aim to expand our DAO functionalities to include more decentralized governance features, allowing users to vote on platform updates, policies, and more—empowering the community to drive the direction of NearGigs.

  • AI-Driven Job Matching: As a long-term goal, we intend to integrate AI to match freelancers with job opportunities more effectively, using algorithms to analyze skills, experience, and preferences to recommend the best gigs and jobs for users.

Share this project:

Updates