Inspiration

Most people struggle to write a strong CV and present it as a real, shareable personal site. I wanted a “one-click” workflow: generate a professional CV with AI, then publish it instantly on a personal .cv domain.

What it does

AI-Powered CV Builder on .cv turns basic user inputs (work history, skills, goals) into a polished CV + portfolio page using an LLM, then provisions a .cv domain and configures DNS so the site can go live under the user’s own domain.

How I built it

  • AI generation: I use :contentReference[oaicite:0]{index=0} (OpenAI-compatible API) for fast, low-cost CV drafting and rewriting, using POST /v1/chat/completions and model discovery via GET /v1/models. :contentReference[oaicite:1]{index=1}
  • Domain + DNS automation: I use :contentReference[oaicite:2]{index=2} to check domain availability, register the domain, fetch the zone, and create DNS records (Domains, Zones, DNS Records endpoints). :contentReference[oaicite:3]{index=3}
  • App: A minimal web UI (form → AI preview → publish flow) with a public page route for the generated portfolio.

Challenges

  • Handling DNS differences for root vs www across hosting providers.
  • Making the publish flow robust (step-by-step progress + clear errors when a domain isn’t available or DNS can’t be updated).

What I learned

  • How much smoother onboarding becomes when AI generation and domain provisioning are combined into one guided flow.
  • Building reliable “automation steps” (check → register → configure DNS → confirm) is key to a good demo.

What’s next

  • Multi-template themes and custom sections (case studies, projects, testimonials).
  • A “job-ready” mode that tailors the CV to a target role and highlights matching keywords.
  • Multi-year domain support as it becomes available.

Built With

  • api
  • css
  • dns
  • domains
  • featherless.ai
  • next.js
  • ola.cv
  • openai-compatible)
  • prisma
  • records
  • sqlite
  • tailwind
  • typescript
  • zones
Share this project:

Updates