From applied to offered ā track every application, predict career paths, analyze resumes with ATS intelligence, and prepare for interviews with AI.
Features ⢠Architecture ⢠Tech Stack ⢠Screenshots ⢠Getting Started ⢠API Reference ⢠Roadmap
Engineering and CS students apply to 30ā60+ companies every internship and placement season. Most manage this crucial career milestone across messy Excel sheets, bookmarked job links, notes apps, and WhatsApp forwards:
- ā Which companies replied vs. ghosted?
- ā³ Who needs a follow-up email after 7 days?
- š Why isn't my resume clearing the ATS filters for specific roles?
- š§ What exact interview questions will a company ask tomorrow?
- šÆ Which skills am I missing for the roles I'm applying to?
Tracktern brings the entire student job-hunting lifecycle into one unified command center: from smart Kanban application tracking to Groq-powered AI interview prep, ATS resume analysis, career roadmap prediction, and automated follow-ups.
- Interactive Kanban Board: Move applications across
Wishlist,Applied,Shortlisted,Interview,Offer, andRejected. - Deep Metadata: Track company types (Startup, Product, MNC), deadlines, direct job URLs, referral contacts, and interview notes.
- Instant Filtering & Search: Filter by status, company type, deadline urgency, or search terms.
- Smart Role Matching: Input your current tech stack, graduation year, and interests.
- Role Match Score: AI scores your fit across 20+ software engineering & data roles.
- Gap Breakdown & Roadmap: Highlights matching skills, missing gaps, and a step-by-step upskilling roadmap.
- Direct Job Shortcuts: One-click targeted search links on LinkedIn, Naukri, Internshala, and Indeed.
- Company & Role-Specific Prep: Generates top 10 targeted technical & behavioral interview questions.
- 3-Day Actionable Prep Plan: Day-by-day study roadmap tailored to the target role's tech stack.
- Interactive Mock Simulator: Answer interview questions with instant AI evaluation, scoring rubrics, and detailed feedback.
- Powered by Groq Cloud: Sub-second LLM inference via
llama-3.3-70b-versatile.
- Client-Side Parsing: Safely parses
.pdfand.docxresumes usingpdfjs-distandmammoth. - ATS Compatibility Score: Scored out of 100 with actionable feedback on layout, keywords, impact verbs, and quantified metrics.
- Role-Targeted Match: Compares your resume against target job requirements to reveal missing keywords before applying.
- Funnel Visualization: Track drop-offs from Applied ā Shortlisted ā Interview ā Offer.
- Company Type Distribution: Analyze success rates across Startups vs. Product companies vs. MNCs.
- Key Metrics: Application velocity, interview conversion rate, average response time, and active pipeline volume.
- Missing Skills Matrix: Aggregates all your applied roles and reveals top missing skills prioritized by demand.
- Consistency Tracker: Streak counter and daily activity heatmap to maintain momentum.
- Problem Practice Tracker: Track DSA problem sets and interview revisions.
- Ghosting Tracker: Automatically flags applications waiting longer than 7 days without updates.
- AI Follow-Up Drafter: Generates personalized emails in multiple tones (Professional, Enthusiastic, Inquiring) ready for one-click copy.
- Nodemailer Integration: Built-in verification and notification support.
- Visual Calendar: Never miss an upcoming OA (Online Assessment), technical interview, or deadline.
- Interview Journal: Log questions asked, difficulty ratings, and interviewer feedback.
- Community Question Bank: Explore anonymized peer interview experiences.
| AI Career Path Predictor | Application Kanban Board |
|---|---|
![]() |
![]() |
| AI Mock Interview | Analytics & Pipeline Health |
|---|---|
![]() |
![]() |
| Daily Practice & Consistency | Career Match Results |
|---|---|
![]() |
![]() |
graph TD
subgraph Client ["Frontend (Next.js 16 + React 19)"]
UI[Tailwind CSS + Radix UI + Recharts]
Parser[Client-side PDF / DOCX Parser]
AuthC[Auth Context & JWT Store]
end
subgraph Server ["Backend (Node.js + Express.js)"]
API[Express REST API]
AuthS[JWT Auth + Bcrypt + OTP Verification]
Controllers[Company, Career, Prep & Journal Controllers]
end
subgraph External ["External Services"]
Mongo[(MongoDB Atlas)]
Groq[Groq Cloud API - Llama 3.3 70B]
SMTP[Nodemailer - Gmail SMTP]
end
UI -->|HTTP / JSON + Bearer Token| API
Parser --> UI
API --> AuthS
API --> Controllers
Controllers --> Mongo
Controllers -->|Fast LLM Inference| Groq
AuthS -->|OTP & Alerts| SMTP
- Framework: Next.js 16 (App Router, Turbopack)
- Library: React 19 + TypeScript
- Styling: Tailwind CSS v4
- UI Components: Radix UI (shadcn/ui primitives), Lucide React
- Charts & Data: Recharts
- Document Parsing:
pdfjs-dist(PDF parsing) &mammoth(DOCX parsing) - Feedback & Animations: Sonner,
vaul,tw-animate-css
- Runtime: Node.js
- Framework: Express.js 5
- Database: MongoDB via Mongoose 9
- Security & Auth: JSON Web Tokens (
jsonwebtoken),bcryptjs, CORS - Mailing: Nodemailer
- LLM Engine: Groq Cloud running
llama-3.3-70b-versatile - Backend Hosting: Render (
https://tracktern-27b8.onrender.com) - Frontend Hosting: Vercel
Tracktern/
āāā client/ # Next.js 16 Frontend
ā āāā app/
ā ā āāā (dashboard)/ # Authenticated App Routes
ā ā ā āāā ai-prep/ # Role & company interview prep
ā ā ā āāā analytics/ # Funnel & pipeline analytics
ā ā ā āāā applications/ # Kanban board & application list
ā ā ā āāā calendar/ # Interview & deadline calendar
ā ā ā āāā career-path/ # AI career predictor & job links
ā ā ā āāā community/ # Community interview experiences
ā ā ā āāā dashboard/ # Primary stats & overview
ā ā ā āāā follow-up/ # Smart follow-up email drafts
ā ā ā āāā journal/ # Personal interview journal
ā ā ā āāā mock-interview/ # AI mock interview simulator
ā ā ā āāā practice/ # Daily DSA & consistency tracker
ā ā ā āāā resume-analyzer/# ATS resume scoring & keyword check
ā ā ā āāā settings/ # Account & profile management
ā ā ā āāā skill-gap/ # Skill matrix & gap analytics
ā ā āāā auth/ # Sign in, Sign up, OTP verification
ā ā āāā layout.tsx # Root layout & providers
ā ā āāā page.tsx # Marketing landing page
ā āāā components/ # Reusable UI & layout components
ā āāā hooks/ # Custom React hooks
ā āāā lib/ # API client, utilities, and helpers
ā āāā public/ # Static assets & screenshots
ā āāā package.json
ā
āāā server/ # Node.js + Express Backend
ā āāā models/ # Mongoose Data Models
ā ā āāā CareerProfile.js # Career paths & skill profiles
ā ā āāā Company.js # Tracked job applications
ā ā āāā Journal.js # Interview question logs
ā ā āāā User.js # User accounts, streaks, OTPs
ā āāā routes/ # Express API Endpoints
ā ā āāā ai.js # Prep plans & follow-up generator
ā ā āāā auth.js # Register, login, OTP, passwords
ā ā āāā career.js # Career predictions & roadmaps
ā ā āāā community.js # Public interview logs
ā ā āāā companies.js # Application CRUD & statuses
ā ā āāā journal.js # Journal CRUD
ā ā āāā mock-interview.js # AI mock interview engine
ā āāā index.js # Server entry point
ā āāā package.json
ā
āāā README.md
Follow these instructions to set up Tracktern locally on your machine.
Ensure you have the following installed:
- Node.js (v18.x or v20.x recommended)
- npm or pnpm
- MongoDB (Local instance or free MongoDB Atlas cluster)
- Groq API Key (Free tier available)
git clone https://github.com/ayushoncode/Tracktern.git
cd Tracktern-
Navigate to the server folder:
cd server -
Install dependencies:
npm install
-
Create your
.envfile from the example template:cp .env.example .env
-
Populate the
.envvariables:PORT=5002 MONGODB_URI=mongodb+srv://<username>:<password>@cluster.mongodb.net/tracktern?retryWrites=true&w=majority JWT_SECRET=your_super_secret_jwt_key_here EMAIL=[email protected] EMAIL_PASS=your_gmail_app_password GROQ_API_KEY=gsk_your_groq_api_key_here LOG_OTP=true ALLOW_OTP_IN_RESPONSE=false
Note on Gmail SMTP: If using Gmail, generate a 16-character App Password via Google Account ā Security ā 2-Step Verification ā App Passwords.
-
Start the backend server:
npm start
The backend will be running at
http://localhost:5002. Verify by visitinghttp://localhost:5002/api/health.
-
Open a new terminal and navigate to the client folder:
cd client -
Install dependencies:
npm install
-
Create your
.env.localfile:cp .env.example .env.local
-
Ensure your API URL is configured:
NEXT_PUBLIC_API_URL=http://localhost:5002/api
-
Start the development server:
npm run dev
-
Open http://localhost:3000 in your browser to experience Tracktern!
| Method | Endpoint | Description | Protected |
|---|---|---|---|
POST |
/api/auth/register |
Register new user & send OTP | ā |
POST |
/api/auth/verify-otp |
Verify email OTP & activate account | ā |
POST |
/api/auth/login |
Login user & return JWT token | ā |
POST |
/api/auth/forgot-password |
Send password reset OTP | ā |
POST |
/api/auth/reset-password |
Reset password using verified OTP | ā |
GET |
/api/auth/me |
Fetch authenticated user profile & streak | ā |
POST |
/api/auth/change-password |
Update account password | ā |
| Method | Endpoint | Description | Protected |
|---|---|---|---|
GET |
/api/companies |
List all tracked applications for user | ā |
POST |
/api/companies |
Add new application card | ā |
PUT |
/api/companies/:id |
Update company details or status | ā |
DELETE |
/api/companies/:id |
Delete application card | ā |
| Method | Endpoint | Description | Protected |
|---|---|---|---|
POST |
/api/ai/prep |
Generate top 10 questions & 3-day prep plan | ā |
POST |
/api/ai/followup |
Draft tailored follow-up email based on status & tone | ā |
| Method | Endpoint | Description | Protected |
|---|---|---|---|
POST |
/api/career/predict |
Predict best-fit roles, skill gaps & roadmaps | ā |
GET |
/api/career/profile |
Fetch user's saved career path profile | ā |
POST |
/api/career/save-path |
Save target path to user profile | ā |
| Method | Endpoint | Description | Protected |
|---|---|---|---|
POST |
/api/mock-interview/generate |
Generate mock interview questions for role & company | ā |
POST |
/api/mock-interview/evaluate |
Evaluate candidate answer & provide score/feedback | ā |
| Method | Endpoint | Description | Protected |
|---|---|---|---|
GET |
/api/journal |
List user's logged interview notes | ā |
POST |
/api/journal |
Add interview reflection / questions asked | ā |
GET |
/api/community |
Get shared interview experiences from community | ā |
- Next.js 16 + React 19 migration with full modern design system
- ATS Resume Analyzer with client-side PDF/DOCX parsing
- AI Career Predictor with direct job portal shortcuts
- AI Mock Interview Coach powered by Groq Llama 3.3
- Interactive Kanban Board with company categories and notes
- Smart Follow-up Drafter with ghosting detection
- Automated Gmail Sync: Auto-detect status updates directly from incoming emails via Gmail OAuth2
- Browser Extension: 1-click application saving directly from LinkedIn, Internshala, and Wellfound
- Peer Mock Rooms: Real-time peer-to-peer mock interview rooms with video & collaborative coding pad
- Mobile App: Cross-platform React Native companion app for on-the-go deadline alerts
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Created with ā¤ļø by Ayush (@ayushoncode).
- Built with Next.js, Tailwind CSS, and Groq Cloud.
- Icons provided by Lucide.
- Components inspired by shadcn/ui.
ā If you found Tracktern helpful, please consider starring the repository!





