Yoann Abriel
fr

All projects

2026 · Updated May 2026

JobSwiper

Paying users live at jobswiper.ai, built solo

Live at jobswiper.ai with paying customers, built solo. AI-powered job-search SaaS: a match-scoring engine (vector embeddings + LLM reranking), a Canva-style CV editor, a real-time interview simulator, and a Chrome extension for 18+ job boards and ATS systems.

jobswiper.ai

JobSwiper is a comprehensive SaaS platform that revolutionizes job searching through artificial intelligence. The application combines a canvas CV editor (Fabric.js) similar to Canva, an AI cover letter generator with a Canva-like canvas editor (separate engine from the CV editor, 7 built-in templates, handwritten or typed signature support), an interview simulator with audio (Inworld WebRTC for realtime voice, ElevenLabs for TTS previews), and an intelligent company research system via Tavily. A Chrome extension (Manifest v3) captures job listings from 18+ job boards and ATS systems (multi-region Indeed, LinkedIn, Glassdoor, Welcome to the Jungle, JobUp.ch, Jobs.ch, Greenhouse, Lever, Workday, iCIMS, etc.) and organizes them in a Kanban pipeline. Monetized via Stripe with 4 subscription plans.

Challenges

  • Building a full canvas editor with Fabric.js for CV creation
  • Integrating 18+ job boards and ATS systems via a Chrome extension with platform-specific parsing
  • Secure multi-tenant architecture with Supabase Row-Level Security
  • Integrating multiple AI services (OpenRouter, Inworld, ElevenLabs, Tavily) in a cohesive workflow

Solutions

  • Fabric.js v6 canvas editor for CVs with PDF export via Puppeteer
  • Separate canvas editor for cover letters with 7 built-in templates and handwritten or typed signature support
  • Custom CV and cover-letter template import: drop a .pptx or .docx file and the parser converts it into a fully editable canvas template (PPTX preserves absolute positioning at roughly 95% fidelity, DOCX flows the layout at roughly 75 to 85% fidelity), built on JSZip and fast-xml-parser
  • LinkedIn profile import and CV file import: one-click profile bootstrap with a review and merge step before saving, scraping powered by Apify
  • Interview simulator using Inworld WebRTC for realtime voice and ElevenLabs for TTS previews
  • Interview Notes (internally called cheat sheets): AI-generated prep notes per job, with three depth levels and six focus areas (company, role, behavioral, technical, salary, questions to ask)
  • Scout AI agent: in-app chat that answers questions about the user's pipeline and jobs (V1 available, planned V2 cancelled in May 2026 to refocus the product)
  • Job matching engine with a weighted score (skills 40, experience 35, location 10, industry 10, company size 5), fuzzy matching plus synonym lookup, AI industry inference, vector embeddings (1536 dims), and an LLM-based reranker
  • Chrome Extension Manifest v3 with platform-adapted content scripts for 18+ job boards and ATS systems (Indeed, LinkedIn, Glassdoor, Welcome to the Jungle, JobUp.ch, Jobs.ch, Greenhouse, Lever, Workday, iCIMS, SmartRecruiters, Taleo, Workable, Breezy, Ashby, Recruitee, BambooHR, Jazz)
  • Supabase backend with Edge Functions (Deno) and RLS for multi-tenant isolation
  • Admin cockpit: prompt editor with version history, per-operation AI cost tracking, model pricing table, quota management with per-user overrides, platform health and alert thresholds, email log viewer
  • Supporting tech stack: shadcn/ui (new-york style) on Tailwind 4, Resend with React Email for transactional email, hCaptcha on signup and login, Sentry with session replay and user feedback widget, Vercel Analytics and Speed Insights gated by GDPR cookie consent, Recharts for admin dashboards, @react-pdf/renderer (legacy export path) and the docx package for Word export
  • Stripe billing in live mode with 4 plans (Free, Pro, Unlimited, LTD), webhooks at https://www.jobswiper.ai/api/webhooks/stripe

Results

  • Platform in production at jobswiper.ai
  • Support for 18+ job boards and ATS systems via Chrome extension
  • Complete pipeline: job capture → AI matching → CV → cover letter → interview
  • Full admin panel with AI monitoring, quota management, and user management
  • Compliance and trust: GDPR cookie consent, full data export, account deletion, hCaptcha on auth, Sentry-based error monitoring with user feedback

Technologies

Next.js 16 · React 19 · TypeScript · Tailwind CSS · shadcn/ui · Supabase · OpenRouter AI · Inworld · ElevenLabs · Apify · Tavily · Stripe · Fabric.js · Chrome Extension · Framer Motion · Puppeteer · Resend · React Email · hCaptcha · Sentry · Vercel Analytics · Recharts · @react-pdf/renderer · docx · JSZip · fast-xml-parser