Resumeaizer
Nextjs · React · TailwindCSS · Gemini

Resumeaizer – AI-Powered Resume Analysis Tool
Resumeaizer adalah platform analisis resume berbasis AI yang memungkinkan pengguna mengunggah resume dalam format PDF dan mendapatkan feedback otomatis berdasarkan lowongan pekerjaan yang dilamar. Platform ini membandingkan isi resume dengan persyaratan dan deskripsi pekerjaan secara real-time menggunakan teknologi AI.
Website ini dibangun menggunakan Next.js (App Router) dengan arsitektur full-stack dimana frontend dan API berjalan dalam satu aplikasi, mengintegrasikan OpenRouter API untuk mengakses berbagai model AI secara gratis.
🚀 Key Features
- PDF Resume Upload & Text Extraction — Pengguna dapat mengunggah resume dalam format PDF (maksimal 10MB) yang kemudian diekstrak teksnya secara otomatis menggunakan pdfjs-dist untuk dianalisis oleh AI.
- AI-Powered Resume Analysis — Resume dianalisis menggunakan AI dengan scoring system yang realistis dan ketat. Analisis mencakup skor kecocokan, kekuatan, kelemahan, kesesuaian skill, analisis keyword, skor ATS, tingkat kompetitivitas, dan rekomendasi perbaikan.
- Multi-AI Model Support — Tersedia 5 model AI gratis yang dapat dipilih pengguna: Mistral, DeepSeek, Qwen, Google Gemini, dan OpenAI GPT. Setiap model memiliki karakteristik berbeda dalam hal akurasi dan kecepatan analisis.
- Multi-Language Feedback — Hasil analisis dapat ditampilkan dalam Bahasa Indonesia atau English, memudahkan pengguna dari berbagai latar belakang bahasa.
- Comprehensive Analysis Dashboard — Hasil analisis ditampilkan dalam tampilan tab yang terorganisir: Overview, Skills, Keywords, dan Tips.
- Robust Form Validation — Validasi input menggunakan Zod schema baik di sisi client maupun server, memastikan data yang dikirim valid dan aman.
- Responsive & Modern UI — Antarmuka yang responsif dengan dukungan dark mode, animasi teks menggunakan Framer Motion, dan komponen UI konsisten menggunakan Radix UI + Tailwind CSS.
- Error Handling & Retry Mechanism — Retry mechanism hingga 3x percobaan dengan exponential backoff, serta fallback result jika semua percobaan gagal.
🛠️ Tech Stack
| Kategori | Teknologi |
|---|---|
| Framework | Next.js 15 (App Router), React 19, TypeScript |
| Styling | Tailwind CSS 4, Radix UI, Lucide Icons, Framer Motion |
| AI Integration | OpenRouter API via OpenAI SDK (Mistral, DeepSeek, Qwen, Gemini, GPT) |
| PDF Processing | pdfjs-dist |
| Form Handling | React Hook Form + Zod Validation |
| Analytics | Vercel Analytics |
| Fonts | Inter, Poppins (Google Fonts) |
❗ Problem
Pencari kerja sering menghadapi kesulitan dalam menilai apakah resume mereka sudah sesuai dengan lowongan pekerjaan yang dilamar. Permasalahan utama meliputi:
- Kurangnya feedback objektif — tidak ada cara mudah untuk mengetahui seberapa cocok resume dengan persyaratan pekerjaan
- Proses review manual yang subjektif — penilaian resume secara manual memakan waktu dan cenderung bias
- Rendahnya ATS compatibility — banyak resume ditolak oleh Applicant Tracking System karena kurangnya keyword dan format yang tidak optimal
- Tidak adanya panduan perbaikan yang spesifik — pencari kerja tidak tahu aspek mana dari resume yang perlu ditingkatkan
Oleh karena itu, dibutuhkan sebuah tool otomatis yang dapat menganalisis resume secara objektif dan memberikan feedback yang actionable berdasarkan lowongan pekerjaan yang dituju.
✅ Solution
Solusi yang digunakan adalah membangun aplikasi web full-stack menggunakan Next.js dengan App Router, dimana frontend dan API endpoint berjalan dalam satu aplikasi.
Proses analisis dimulai dari unggah PDF resume yang kemudian teksnya diekstrak menggunakan pdfjs-dist. Teks resume beserta detail lowongan pekerjaan dikirim ke OpenRouter API yang mengakses berbagai model AI secara gratis. Prompt yang dirancang khusus menginstruksikan AI untuk memberikan analisis dalam format JSON terstruktur, mencakup skor kecocokan, kekuatan, kelemahan, skills match, keyword analysis, skor ATS, dan rekomendasi perbaikan.
Untuk menjamin reliabilitas, diterapkan retry mechanism dengan exponential backoff dan fallback result jika AI gagal merespons. Validasi input menggunakan Zod schema memastikan data yang masuk valid di kedua sisi (client & server). Hasil analisis ditampilkan dalam dashboard interaktif dengan tab navigation untuk pengalaman pengguna yang optimal.