*This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle JobMatch AI is an intelligent freelance gig and job matching platform that turns the tedious freelance job hunt into an unfair competitive advantage.
Freelancers and side hustlers on platforms like Upwork, Fiverr, and Contra spend 30–45 minutes customizing bids for every individual client posting. Applying with generic proposals yields a sub-5% interview rate, while manually tailoring resumes, identifying missing requirements, and writing consultative proposals burns hours of unpaid time.
/saved):
The landing screen offers instant exploration. Judges and users can upload their own resume (PDF or pasted text) or click one of the 10-Second Judge Quick Try scenarios (Full-Stack React & Node MVP or Senior AI Application Engineer) to populate real-world candidate and RFP data with a single click.
Once you click "Analyze Match & Write Proposal", Google Gemma 4 decomposes both documents, returning structured diagnostics in ~1.4 seconds:
Rather than leaving candidates wondering how to improve, JobMatch AI provides three prioritized action items followed by a client-tailored proposal:
Freelancers shouldn't bid blindly. The Opportunity Ranking System allows candidates to save multiple client RFPs into a ranked pipeline:
Unit economics make or break a side hustle. JobMatch AI features a transparent freemium pricing structure:
DEV Hacktoberfest Open-Source AI Challenge · Week 2 "Side Hustle"
Powered by Google's open-weight model: Gemma 4 31B
JobMatch AI turns the tedious freelance job hunt into an unfair competitive advantage. Built around Google Gemma 4, it analyzes candidate resumes against job descriptions or freelance gig postings, calculates a precise match score (0–100), pinpoints missing skills, provides 3 concrete actionable fixes, and crafts tailored, high-converting proposals in the candidate's chosen tone.
The repository is organized into a clean full-stack architecture:
frontend/: React 19 + Vite + Tailwind CSS with client-side PDF parsing and interactive Radar diagnostics.frontend/lib/llm.js: Core open-model provider module handling prompt construction, schema validation, and retry mechanics.api/ & frontend/api/: Vercel serverless edge functions (/api/analyze and /api/status) with zero cold-starts and 24/7 uptime. frontend/test/llm.test.js: Automated unit test suite verifying structured JSON parsing, error recovery, and provider switching (8/8 tests passing).
JobMatch AI is built around Google's flagship open-weight model: Google Gemma 4 31B.
To ensure both lightning-fast public evaluation and zero-data-leak privacy, JobMatch AI features a single provider layer (frontend/lib/llm.js) supporting two switchable modes:
**Cloud Mode (`gemma4:31b-cloud`):**
**Local Mode (`gemma4` on `localhost:11434`):**
`gemma4:12b`, `qwen2.5:1.5b`, etc.).
Small and mid-sized open models can occasionally produce conversational preamble or markdown code blocks. To guarantee 100% production reliability:
extractJSON) cleans code fences and trailing commas. match_score, score_reason, matched_skills, missing_skills, 3 fixes, and cover_letter).
In high-volume job seeking and freelance bidding, the model architecture is not an implementation detail — open models are what make this product economically and ethically viable:
Commercial closed models (like GPT-4) charge recurring per-token fees for input context and output generation. A thorough evaluation requires sending a full candidate resume (~1,200 tokens) alongside a lengthy client RFP (~1,000 tokens), plus generating a structured proposal (~800 tokens). At scale, proprietary API fees destroy side-hustle unit economics.
With Gemma 4: In Local mode, the cost per match is $0.00. In Cloud mode, open weights allow deployment on cost-effective infrastructure with predictable unit economics.
Resumes contain highly confidential personal identifiable information: full legal names, contact details, employer history, salary markers, and proprietary project details.
With closed APIs, that data is transmitted to third-party proprietary servers. With Gemma 4's open weights, candidates can run evaluations completely on-device on their own hardware—guaranteeing 100% confidentiality.
Proprietary models are black boxes subject to sudden deprecation, aggressive rate limiting, and unannounced behavioral shifts. Gemma 4's open weights allow developers to:
Author: @Dhiraj201226