Most job boards are glorified spreadsheets with a search bar. GiggleGigs isn't. It's a two-sided marketplace β "Find Work. Hire Talent." β built to close the gap between "I posted a job" and "I hired someone good," using AI at exactly the three points where it saves real time: writing the posting, writing the application, and screening the results.
Here's what's actually under the hood, and why it's worth a look.
#
The Problem It Solves
Job boards fail in a predictable way: employers post vague listings because writing a good one is tedious, candidates send generic applications because tailoring one is tedious, and then the employer drowns in a stack of applications that all look the same. Nobody's time gets saved β the tedium just moves downstream.
GiggleGigs attacks all three steps at once:
Companies write a two-sentence prompt and GiggleGigs' AI job-description writer expands it into a full posting with requirements, budget framing, and structure. #
Seekers get an AI-drafted, job-specific cover letter instead of copy-pasting the same one everywhere β and can even upload a resume during onboarding and have Gemini auto-fill their entire profile (name, bio, skills, headline, links, experience) in seconds. #
Companies then use an AI application screener that match-scores and summarizes every applicant against the job's actual requirements, so reviewing 40 applications doesn't mean reading 40 applications.
That's the pitch: less busywork on both sides of the transaction, and a marketplace that gets more useful the more people use it.
#
What's Actually Built
This isn't a prototype β it's a full production-shaped Django + React application with a genuinely deep feature set:
For job seekers
- Skill/location/budget/timeline-filtered job search
- One-click applications with optional resume upload (PDF/DOC/DOCX, validated server-side)
- AI cover letter generation and AI resume-parsing onboarding
- Real-time application tracking across a five-stage pipeline (Pending β Reviewing β Interviewed β Hired/Rejected/Withdrawn)
- Application withdrawal, favorited jobs, and a daily digest email of new jobs matching your skills
For companies
- Full job posting management (hourly or fixed price, detailed requirements)
- A filterable, sortable applicant dashboard with live hiring-pipeline stats
- AI-powered candidate search and AI match-scoring per applicant
- Star-rating feedback to candidates, resume downloads, and team invitations for multi-seat company accounts
- Credit-based billing via PayPal to unlock posting and candidate contact
Platform-wide
- Real-time notifications over WebSockets (Django Channels + Daphne ASGI) β no polling, no refresh
- JWT auth plus django-allauth for email/social login
- Celery + Redis background processing with Celery Beat and Flower for monitoring
- Content moderation tooling for jobs, companies, and users
- A full analytics dashboard for staff on jobs and user activity
- An API-first backend (Django REST Framework, OpenAPI schema via drf-spectacular) behind a React 18 + Vite SPA
Every one of these shipped incrementally and is live in the codebase today β this is a v1.7 product with a real changelog, not a feature wishlist.
#
The Business Model Is Already Wired In
GiggleGigs isn't just feature-complete β it's monetization-complete. Companies post their first two jobs a month for free (liquidity first, revenue second), and then convert through one of:
$29 single-post unlock β the low-commitment first purchase, for a company that just got applicants and wants to actually contact them #
Starter ($49/mo) β for companies hiring regularly #
Growth ($99/mo) β adds full candidate search
- Annual plans at two months free
That progression β free listing β paid contact unlock β subscription β is a deliberate sequencing choice: liquidity (seekers applying) has to exist before employers will ever pay, so the free tier isn't a loss leader, it's the engine that makes the paid tier valuable at all.
#
Why the Engineering Choices Matter
A few decisions stand out as the kind that pay off later rather than look impressive now:
Services layer, not fat views β business logic lives outside the DRF views, which keeps the API surface thin and testable. #
Proxy user model (Company / Seeker / Employee subtypes) instead of bolting role flags onto a single User table β cleaner permissions, cleaner queries. #
Consistent { data, message, errors } API envelope across every endpoint, which makes the frontend's error handling and states uniform instead of ad hoc per-page. #
Docker-only local workflow β Postgres, Redis, Django, Celery, Channels, and MailHog all come up together with one command, so "works on my machine" isn't a category of bug here. #
Real-time built on Channels from day one , not retrofitted β notifications, status changes, and messaging all ride the same WebSocket infrastructure.
None of this shows up in a demo GIF, but it's the difference between a project that can take on its next ten features and one that needs a rewrite to get there.
#
Try It
GiggleGigs is a working, self-hostable job board and marketplace β clone it, docker compose -f local.yml up, and you have Postgres, Redis, Celery, Channels, and MailHog running together in one shot. If you're evaluating job-board platforms, building a niche talent marketplace, or just want to see AI applied to hiring in a way that removes tedium instead of adding a chatbot nobody asked for, it's worth a look.
Find work. Hire talent. Skip the busywork.