Inspiration
- What if your resume and the job description were all you needed? No writing, no researching, no guessing who to email.
- Students send 50+ cold emails and 90% of them get ignored. Not because they're unqualified — because the emails sound like ChatGPT wrote them.
What it does
A specialized agent system built strictly for job hunters. Unlike standard LLM wrappers, the Cold Email Agent ensures that every outreach is factually grounded in the user's real resume and the specific job description, without hallucinated credentials and generic AI filler. The agent researches the target company and drafts compelling cold emails that are strictly grounded in the applicant's actual resume and the specific context of the recruiter and job description. It also keeps track of emails sent and the amount that were sent successfully.
How we built it
Frontend: Next.js 16 + TypeScript + Tailwind CSS — deployed on Vercel Backend: Python + FastAPI + Uvicorn — deployed on Railway Database: PostgreSQL (Railway) LLM: Groq API (llama-3.3-70b-versatile) Email: Gmail API via OAuth 2.0
Challenges we ran into
- The deployment produced errors due to un-added environment variables and not installing the requirements
- Email was not formatted properly (line-wrapping too soon)
Accomplishments that we're proud of
- Creating a usable, end-to-end product that can send an email in under 30 seconds
- Gmail integration with OAuth2
What we learned
- How to use an LLM API for function calling
- How to connect a user's Google account for signing in and integrate the Gmail API to send emails
What's next for Cold Email Agent
- LinkedIn scraping to email recruiters from a specific company
- Automatically applying to internship positions based on skills shown in the user's resume
- Follow-ups on cold emails sent if no reply received within a week
Built With
- fastapi
- gmail-api
- groq
- next.js
- postgresql
- python
- tailwind
- typescript
- uvicorn
- vercel
Log in or sign up for Devpost to join the conversation.