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