Inspiration

Most job seekers spend hours tailoring their resume and cover letter for each application — often without knowing if their CV even passes the ATS filter. We wanted to build a tool that does this using the user's own documents, with zero hallucinations.

What it does

aycabtu is an AI-powered job application assistant. Upload your LinkedIn PDF, old CV, and a job description, and the app generates:

  • A tailored, ATS-optimised resume (Professional style or ATS Max Score format)
  • A personalised motivation letter
  • Interview tips — including AI-powered web research on your actual named interviewer

The free ATS match check lets anyone test their existing resume against a job description and get a keyword match score with actionable suggestions.

How we built it

Rails 8 monolith with real-time streaming via Turbo Streams + Action Cable. All AI generation runs through Anthropic's Claude API. Resume content is generated in 3 incremental parts streamed live to the user. PDFs are generated with Prawn. Background jobs handle all AI calls asynchronously with a credit refund system on failure.

The interviewer research feature uses Claude's web_search tool to research named interviewers before generating tips — unique in the market.

Challenges we ran into

  • Keeping PDF layout consistent across different content lengths without blank extra pages
  • Streaming partial AI responses via Turbo while maintaining coherent document structure
  • Building an atomic credit system that refunds reliably on job failure

What's next

One-click CV tailoring for new job descriptions and a measured ATS score on the Professional PDF as a USP.

Built With

  • anthropic-claude-api-(claude-sonnet-4-6)
  • docker
  • hotwire/turbo-streams
  • postgresql
  • prawn
  • ruby-on-rails-8
  • stimulus.js
  • stripe
  • tailwind-css
Share this project:

Updates