← Back to Portfolio

Chrome Extension

Emplorio

Apply once. Send everywhere.

An AI powered Chrome extension that auto fills job applications across every major ATS and drafts tailored cover letters with Claude, in seconds rather than minutes.

TypeScript
Next.js 15
Fastify
Drizzle
Neon
Claude API

Serious job hunters fill the same twenty fields across ten applications a day, before they even start tailoring a cover letter. Emplorio collapses that into a single click. It detects an application form, identifies the ATS, and populates every field from a profile you only have to write once.

Detection runs in three layers. A bespoke adapter per supported ATS handles the easy ninety percent. Generic heuristics cover the long tail by walking autocomplete, name, id, and adjacent label text against the profile schema. A Claude driven fallback maps anything unfamiliar and caches the result per domain so the model only runs once on a new site.

On top of that, Claude handles the writing. Cover letters, question answers, and follow up emails, all grounded in your real CV. The model rewrites and emphasises, it never invents. Your Anthropic key lives only in your browser's local storage, never logged, never persisted server side.

What it does

Key features

9 ATS adapters

Greenhouse, Lever, Workday, Ashby, LinkedIn, Indeed, Workable, SmartRecruiters, iCIMS, all first class.

AI cover letters

Streamed from Claude, grounded in your CV. Tone-adjustable. Same flow for question answers and follow-ups.

Application tracking

Every application logs automatically with company, role, JD snapshot, status, and timestamps.

Privacy first

Bring your own Anthropic key. EU-only storage. No analytics, no tracking, no broad host permissions.

Product Walk-through

Emplorio Gallery

From sign-in to auto-fill. Every screen of the extension.

Emplorio - sign in
1 / 13

Sign In / Login

Tech stack

A real backend, not a BaaS.

The extension is TypeScript and React 18 on Vite with @crxjs/vite-plugin for Manifest V3, fully MV3 CSP compliant with no inline scripts and scoped permissions to only the ATS sites it supports. The marketing site at emplorio.co.uk is Next.js 15 on Vercel.

The API is hand written Fastify on Node 22, in a Docker container on Fly.io London. I picked it over serverless because the AI endpoints stream and prompt cache the profile half of every request. Storage is Neon Postgres in the EU via Drizzle. Auth is magic link OTP via Resend into a JWT cookie. No third party identity provider.

Emplorio started while job hunting. The first version had two adapters and a profile editor in local storage, and it saved enough time on a single Friday afternoon that the rest of the project became obvious. The product question wasn't whether autofill was useful, but whether it could be made trustworthy enough to use on every application without checking.

Three product calls came out of that. Co Pilot is the default and Auto Apply is opt in and rate limited, restraint over flash. The LLM is grounded, never fabricated, because a single hallucinated employment date is a fatal credibility error. And the API key is yours, which keeps incentives clean. I don't bill per token, so I have no reason to make the prompts longer than they need to be.

The whole thing was built solo in a few weeks, used on the roles I'm interviewing for right now, and saved over forty hours of pure form filling.