Inspiration

Applying for jobs shouldn't feel like a full-time job itself. As a student exploring different career paths, I found myself preparing for two very different roles: Data Analyst and Frontend Engineer Intern. The problem? A single resume couldn't effectively highlight the different skills, projects, and strengths each role required. I needed a way to tailor my applications without starting from scratch every time.

That's when I came up with Draftly. I created it to transform scattered application tasks into one guided workflow—analyzing job descriptions, identifying relevant skills and gaps, connecting job requirements to my existing portfolio, and generating tailored resume content and recruiter emails. Instead of rewriting everything for every opportunity, Draftly helps candidates present their experience more effectively while keeping them in control of the final application.

What it does

Draftly is an AI-powered job application assistant that connects job requirements with a candidate's profile and portfolio.

Users can paste a job description or provide a job posting URL. Draftly analyzes the role, identifies relevant skills and potential gaps, and generates tailored resume content and a recruiter email. Users can review and edit their resume, export it as a PDF, and create a Gmail draft with the PDF attached.

Draftly also saves application history so users can revisit previous opportunities and analyses. Emails are created as drafts, never automatically sent, keeping the final decision in the user's hands.

How we built it

I built Draftly using Next.js, React, TypeScript, and MongoDB. MongoDB Atlas provides persistent cloud storage for application and portfolio data.

For AI-powered analysis and content generation, we integrated Groq through the Vercel AI SDK. We used Cheerio to parse supported public job postings, React-PDF to generate resume PDFs, and Google OAuth with the Gmail API to create email drafts with PDF attachments.

We used GitHub for version control and Vercel to deploy the application. Our focus was on connecting these technologies into one functional, end-to-end experience.

Challenges we ran into

Integrating AI, database storage, PDF generation, Gmail authorization, and cloud deployment into a single application presented several challenges.

We worked through database connection issues, environment configuration, OAuth permissions, and ensuring that generated PDFs were correctly attached to Gmail drafts. We also had to consider the reliability of AI-generated content. A professional-looking resume is not useful if it invents experience or qualifications.

We designed the workflow around the candidate's available profile and portfolio information and made the generated content reviewable before use.

Accomplishments we're proud of

  • End-to-end workflow: Job analysis, skill matching, resume customization, PDF generation, and email preparation in one application.
  • Portfolio-aware assistance: Connecting job requirements to a candidate's existing projects and experience.
  • Working Gmail integration: Creating email drafts with tailored PDF resumes attached.
  • Persistent application history: Saving applications for later review.
  • Live deployment: Making the application accessible beyond the local development environment.

We're especially proud that Draftly goes beyond generating text: it connects analysis, document creation, and email preparation into a practical workflow.

What we learned

We learned that building a useful AI product requires much more than connecting a language model to a prompt. Structured outputs, data validation, error handling, database persistence, and thoughtful interface design all matter.

Integrating external services also taught us the importance of OAuth permissions, environment variables, API configuration, and production testing.

Most importantly, we learned that AI should support human decision-making rather than replace it. Candidates should remain able to review, correct, and approve their application materials.

What's next for Draftly

We envision Draftly becoming a more complete career companion. Future improvements could include clearer explanations of match scores, stronger links between recommended skills and portfolio evidence, smarter application tracking, and insights into recurring skill gaps across job opportunities.

Our goal is to help candidates make better use of the experience they already have, understand where they need to grow, and approach each opportunity with greater confidence.

Draftly turns a job description into a prepared application—while keeping the person behind the application in control.

Built With

Share this project:

Updates

Submission history