Inspiration

🚀 Inspiration

Standing out in today’s job market is tougher than ever. I kept seeing the same problem: most CV tools are static, outdated, and built like digital paper. For students and junior developers especially, writing a powerful CV felt more like a roadblock than a launchpad.

Inspired by the as-a-service philosophy behind modern, modular platforms, I asked myself:
What if CVs were programmable?

That question sparked CVaaS — CV as a Service.
My mission: turn every CV into a living, dynamic, embeddable career API.


🧠 What it does

CVaaS is a developer-centric platform that empowers users to:

  • 📄 Build dynamic, structured CVs in a clean JSON-based schema
  • 🤖 Optimize CV content with open-source LLMs — refining summaries, enhancing bullet points, and boosting keyword relevance
  • 🔗 Share CVs securely using ephemeral smart links with password protection, access limits, and view analytics
  • 🧩 Embed CVs seamlessly on personal websites — complete with customizable themes and a light/dark mode toggle
  • 💾 Export CVs instantly in human-readable formats for recruiters and application submissions

🔧 How I built it

  • Frontend: React + TailwindCSS with shadcn/ui for fast, accessible, and elegant component styling
  • State & Routing: React Hooks + React Router DOM for SPA navigation and protected route access
  • CV Engine: A modular, section-aware JSON renderer with ordered layouts, theming, and extensibility
  • LLM Integration: Used Hugging Face open models (e.g., mistralai/Mistral-7B-Instruct) to suggest optimized summaries, bullets, and skills
  • Syndication System: Ephemeral sharing built on access tokens with download tracking, password validation, and view limits
  • Embedding & Themes: Live widget previews with dark/light toggling, auto-update configs, and user-defined CSS overrides

🧗 Challenges I ran into

  • Selecting the right LLMs for CV-focused tasks — balancing quality, speed, and staying within Hugging Face’s free-tier limits
  • Rendering structured JSON CVs in a consistent, theme-aware layout while allowing for dynamic section ordering
  • Designing secure yet intuitive access control for ephemeral links, including password protection and view limits
  • Achieving responsive, embeddable previews without compromising performance or bloating the frontend bundle

🏆 Accomplishments that I'm proud of

  • Built a real-time CV pipeline: JSON → UI → LLM-enhanced → updated JSON
  • Developed a fully functional embeddable CV widget, effectively turning a resume into an API-powered portfolio
  • Implemented theme-aware rendering with zero-config dark/light mode toggling
  • Delivered a complete, polished MVP in under a week — functional, shareable, and production-ready

📚 What I learned

  • The combination of structured data and AI unlocks powerful new ways to tell personal career stories
  • Open-source Hugging Face models can be tailored to generate natural, recruiter-friendly summaries
  • Developer UX is critical — especially when your users are job-hunting engineers
  • The hardest part of AI features isn’t the model — it’s designing the clean, intuitive flows around the model. That's a tough one.

🔮 What's next for CVaaS

  • 🧠 Train a domain-specific LLM for tailored CV suggestions, especially for developers, students, and early-career professionals

  • 🌍 Support localization & multi-language CV generation to break language barriers and expand global reach

  • 📊 Build a recruiter dashboard with smart filters, AI-based ranking, and skill heatmaps for efficient talent discovery

  • 💼 Integrate job boards and internship APIs for real-time job matching directly from your CV

  • Allow users to host their CVs with a custom domain via subdomain support

  • 🤖 Automate job-to-candidate matching using AI that parses job descriptions and surfaces best-fit CVs

  • 💸 Monetize with premium features like analytics, LLM-powered feedback boosts, and branded CV themes

Built With

Share this project:

Updates