Full Stack Development Projects in SpainFull Stack Development Projects in SpainBriefHaven is a full-stack SaaS platform I built to solve a real problem for freelancers and agencies: chasing clients for project details, files, and approvals across scattered emails.
It gives clients a single secure portal link — no account or password required — where they can fill in structured project briefs, upload files, exchange comments, and approve deliverables, all in one place.
What I built:
Secure, per-client portal links with email-verification (OTP) login — no passwords
Structured brief-collection forms with client review/approval workflows
File upload pipeline with virus/malware scanning
Threaded comments between freelancer and client
Automated email notifications for key events (new brief, new comment, approval requests)
Billing integration (Lemon Squeezy)
Stack: Next.js, TypeScript, Supabase (Postgres, Auth), Cloudflare R2 (file storage), Vercel (hosting), Transloadit (upload processing)
Why it matters:
This project shows what I can build end-to-end — from database schema and auth flows to file handling, transactional email, and billing — as a solo, AI-assisted full-stack developer. If you need a SaaS product, internal tool, or client-facing portal built from scratch, this is representative of the kind of work I deliver.
Live: getbriefhaven.com (http://getbriefhaven.com) Recruiters sit on hundreds of CVs they can't search. Keyword search misses the obvious — the candidate wrote "React", you searched "frontend", they never surface — and every AI tool that fixes that ships candidate data to a third-party API.
I built RecruitSecure AI to do the semantic search without the API call. The embedding model runs server-side through Transformers.js (quantized multilingual-e5-small, 384 dimensions, 100+ languages), so you can ask in Spanish and it finds CVs written in English — and nothing ever leaves the deployment.
Drop in PDFs or DOCX and it extracts name, email, skills and experience, indexes each CV as a vector, and answers plain-language queries like "frontend lead who has built a design system": ranked by relevance, each result showing the exact CV fragments behind the match, so the recruiter sees the reason and not just a score. Retrieval is hybrid — pgvector HNSW cosine fused with BM25 full-text through Reciprocal Rank Fusion, then re-ranked from the recruiter's own thumbs up/down.
Next.js 16, React 19, strict TypeScript, PostgreSQL + pgvector through Drizzle ORM, Auth.js, Stripe subscriptions, multi-tenant with AES-256-GCM encryption at rest and GDPR export and deletion. Built solo, end to end.
The video is the real application: ten synthetic CVs uploaded through the actual pipeline, extracted, embedded and searched. Nothing staged.