Inspiration
The problem with job searching isn’t the lack of jobs, it’s knowing which ones actually fit you.
Most tools help you apply faster. I built ApplyFa.st to help you apply smarter.
I believe everyone deserves to do work they truly enjoy, work that fits their ambitions, personality, and environment. Job searching shouldn't be about volume, it should be about finding the right fit.
What it does
ApplyFa.st is a Chrome extension and web app that acts as your personal job searching copilot. It helps you cut through the noise and focus only on opportunities that genuinely matter to you.
Here's how it works:
Career Profile Generation — ApplyFa.st uses Gemini 2.5 Pro to create a detailed profile of your skills, experience, and preferences — based on your résumé, answers to a onboarding questionnaire, and a rich description of your ideal future role.
Real-time Job Matching — Browse LinkedIn as usual. When you find a job, ApplyFa.st seamlessly rates it against your profile using Chrome's built-in Gemini Nano — running locally on your device. Open the side panel to see how well the job fits, save it, or apply directly.
Automated Job Discovery — Set up scheduled searches and let ApplyFa.st automatically check for new opportunities. When a strong match appears, you'll get an email notification.
Web Application — The web application extends the functionality of the Chrome extension, syncing in real time to give you a seamless experience. It offers analytics dashboards, advanced job filtering, custom AI scoring criteria, and a history of every job you’ve considered.
How I built it
ApplyFa.st combines modern web technologies with Chrome's built-in AI APIs to create a seamless job searching experience.
Chrome Extension Architecture:
- Prompt API — Powers local job scoring with Gemini Nano using custom system prompts tailored to each user's profile
- Content Scripts — Parse LinkedIn job pages and inject UI elements for instant scoring
- Side Panel API — Provides a dedicated workspace for browsing saved jobs with AI scores
- Chrome Storage API — Securely persists authentication tokens and user preferences
- Built with React and Vite for modern extension development
Web Application Stack:
- Frontend — Next.js 15 with React 19, TypeScript, Tailwind CSS, and Shadcn UI
- Backend — Convex (real-time database and serverless functions)
- Authentication — Convex Auth for secure, seamless login across extension and web app
- Email Notifications — Resend with React Email templates for scheduled search alerts
- Job Scraping — Apify API integration for automated LinkedIn job collection
- Profile Import — Relevance API for LinkedIn profile enrichment
- AI Integration — Vercel AI SDK as the framework for building and streaming job scores with structured output generation
- AI Model Provider — Vercel AI Gateway to manage access to both local Gemini Nano and cloud-based Gemini models across all AI features
Key Technical Features:
- Onboarding interview (5 personalized questions) generates user profiles
- Streaming responses for real-time score updates with progressive rendering
- Binary requirement checking system with visual indicators
- Daily and monthly AI usage tracking to manage costs
- Optional custom AI scoring prompts let users define their own criteria
- Real-time data synchronization between extension and web app via Convex backend
Challenges I ran into
Bridging Local and Cloud AI — Designing a hybrid system that seamlessly combines Gemini Nano's local scoring with cloud models was a challenge. I needed to ensure users understood when AI was running locally versus in the cloud, and maintain consistent scoring quality across both approaches.
Context Engineering — Gemini Nano requires careful prompt design to deliver accurate, concise job scores within token limits. I iterated extensively on system prompts to balance detail with performance, especially for streaming responses.
Real-time Extension Updates — Synchronizing data between the Chrome extension, side panel, content scripts, and web app in real-time required thoughtful architecture. Using Convex's reactive queries solved this elegantly, but integrating it with Chrome's extension APIs had its learning curve.
Accomplishments that I'm proud of
ApplyFa.st offers a personalized and simple way to approach something many people find stressful and time-consuming — finding meaningful work. It adds a key layer of insight right where and when you need it, with instant scoring and a calm side panel that keeps you in your flow.
Building the full system — from importing your LinkedIn profile, to the AI onboarding, to daily job alerts — and getting it all to work smoothly together with the web application was a big challenge, but worth it.
Most of all, I hope ApplyFa.st helps people focus on finding the right fit, not just more options — so that meaningful work becomes accessible to everyone.
What I learned
Chrome's Built-in AI APIs are production-ready — Gemini Nano through the Prompt API delivered surprisingly high-quality results for job scoring. The streaming capabilities made the UX feel responsive and modern.
Local AI unlocks new UX patterns — Because scoring happens instantly without network requests, I could experiment with proactive features like the floating nudge button that would feel too slow or be too costly with cloud APIs. As a design engineer I'm incredibly excited to explore this emerging space further.
Hybrid AI is the future — Users want both: the speed and privacy of local AI for quick tasks, and the power of cloud models for deep analysis. Building systems that intelligently route between them is key. In ApplyFast we used local Gemini Nano quick, privacy-first and cost effective scoring, Gemini Nano runs locally in your browser. For automated searches and profile analysis, cloud-powered models Gemini-pro and -flash are used. In this way the user gets the best of both worlds.
What's next for ApplyFa.st
Expanded AI API Usage:
- Experiment with the Summarizer API to condense lengthy job descriptions
- Experiment with the Rewriter API to help users adapt their profiles for different roles
Built With
- apify
- chrome
- chrome-ai
- convex
- gemini-nano
- next.js
- prompt-api
- react
- resend
- shadcn-ui
- tailwindcss
- typescript
- vercel-ai-sdk


Log in or sign up for Devpost to join the conversation.