Crafting experience...
10/12/2025
A Project Made By
Submitted for
Built At
HuddleHive's WIT Hackathon #4
Hosted By
We're SwipeHire, a group focused on increasing communication between applicants and recruiters throughout the application process, while maximising the recruiter's available resources. Swipe. Match. Get Hired. The future of recruitment through seamless connections. We use automatic notifications to keep applicants updated throughout their application process, fine-grained to a point that is just not feasible for the average recruiter, and use AI to fill in the gaps when applicants still have more questions. Our approach is focused on making the lives easier for both parties.

What is the problem you are trying to solve? Who does it affect?
Fundamentally the hiring process is clunky; it takes too long and the communication is terrible. Applicants wait weeks for updates. Recruiters struggle to manage replies. Everything gets lost in long email chains.
There's no real connection, just silence and stress on both sides.
What is your idea? How does it fix the problem?
SwipeHire fixes that by turning job applications into real-time conversations. Both applicants and recruiters can swipe right on each other to match instantly. Once matched, they can chat directly inside the app: no emails, no delays, no confusion. Our chatbot keeps everything moving by answering questions, sending updates, and guiding both sides through the hiring process.
Our app gives insight into the application process that simply isn't feasible in a traditional application setting - applicants are sent notifications when a recruiter interacts with their application, something that wouldn't be possible for recruiters with limited resources.
And we know that you've heard of Tinder for job applications before, but there's a reason why everyone's getting off Tinder - everyone ghosts eachother! With these fine grained notifications about the application process, plus a trained AI chatbot to fill in the gaps along the way, we ensure that both applicants and recruiters are satisfied the whole way through.
Some examples of the design:
Explore for applicants:

Chatbot once matched/waiting to be matched:

How do all the pieces fit together? Does your frontend make requests to your backend? Where does your database fit in?
Frontend ↔ Backend:
React components make HTTP requests to Next.js API routes
API routes handle business logic and database operations
Examples: /api/jobs, /api/applicant/available-jobs, /api/recruiter/stats
Backend ↔ Database:
API routes use Supabase client to query PostgreSQL
Server-side client handles authentication and RLS policies
Database enforces security through policies (recruiters can only see their jobs, etc.)
Authentication Flow:
Middleware intercepts requests to maintain user sessions
Supabase handles authentication state
User roles determine which data they can access
Our web app connects both sides through one system:
Applicants swipe on the roles they like
Recruiters swipe on profiles that fit
When both swipe right, a match is created and a chat opens.
The AI chatbot runs inside the chat, helping with application updates, interview prep, and follow-ups.
Due to the limited time, we had to compromise on a few features, though these were thought through extensively during the design and ideation process. We wanted to focus the most on having a usable framework for building out the app if we had more time, by focusing on making our code modular, and our designs build on eachother.
Some compromises we made were on full AI chatbot/chat support - instead, we implemented our automatic notifications between recruiters and applicants to ensure communication between both sides. Due to our complex dual-user system, this was a compromise worth taking in order to maximise a solid skeleton.
We focused on a few things initially to ensure a seamless user-experience:
Dual-Perspective Swipe Matching Algorithm
Sophisticated bidirectional matching system where applicants swipe on jobs AND recruiters swipe on applicants who showed interest in their jobs
Complex state management tracking user actions across multiple tables (job_actions, applicant_actions) with mutual match detection
Real-time filtering to prevent duplicate interactions and ensure fresh content delivery
• Advanced Supabase Authentication & Middleware Architecture
Custom Next.js middleware with SSR-optimized Supabase integration for seamless session management
Role-based access control (RBAC) with automatic route protection and user role validation
Cookie-based session persistence with automatic refresh and redirect handling for unauthorized access
• Intelligent Content Filtering & Recommendation Engine
Fast-fuzzy search integration for semantic job/applicant matching with configurable search options
Multi-dimensional filtering (location, industry, job type, skills) with real-time preference application
Exclusion-based recommendation system that prevents re-showing previously acted upon content
Modular API Architecture with TypeScript Safety
RESTful API endpoints with proper error handling and status code management
Type-safe interfaces throughout the application with comprehensive TypeScript coverage
Separation of concerns with dedicated API routes for different user types and actions
What did you struggle with? How did you overcome it?
Crucially, there's a reason this process is difficult. Due to lack of resources, recruiters can struggle to send updates and keep track of all applications. Trying to circumnavigate that, in a unique and effective way was extremely difficult. To overcome this, we had to get creative and work out what makes our web app distinctive. Our emphasis on clear communication through automating the update system of applications distinguishes us from our competitors.
What did you learn? What did you accomplish?
We built a concept that finally fixes the communication gap between applicants and recruiters. Instant matching, realtime chat. and an AI assistant that keeps the process smooth and transparent. No more long emails or waiting weeks for updates. We learned how to make a modular codebase that we could build upon for each user story - and learned that foundations are really important. We also learned how to think from the perspectives of our target audience, especially after going to the sponsor for advice - their insight was key to our focus on communication.
What are the next steps for your project? How can you improve it?
We want to make the chatbot smarter: capable of summarizing CVs, scheduling interviews, and sending reminders automatically. The goal is to make hiring not just faster, but actually enjoyable for both sides.
We also want to increase AI integration by showing match percentages based on a candidate's CV and a recruiter's job description - streamlining the process even more so that applicants get answers quicker, and recruiters find the people they need.