A Next.js application that helps job seekers create ATS-optimized CVs and matches them with relevant job listings using AI-powered semantic search.
- π¨ Intuitive CV Builder - Create professional CVs with real-time preview
- π€ AI-Powered - Gemini API for CV parsing and intelligent matching
- π PDF Export - Download your CV as a professional PDF
- π Smart Job Matching - Vector-based semantic search finds relevant opportunities
- π Multi-Language - Full support for English and Turkish
- π― ATS Optimization - Build CVs that pass Applicant Tracking Systems
- Frontend: Next.js 14+ (App Router), React 19, TypeScript
- Backend: Next.js API Routes (Serverless)
- Styling: Tailwind CSS, shadcn/ui
- Database: Supabase (PostgreSQL + pgvector)
- Auth: Supabase Auth
- AI: Google Gemini API
- State Management: Zustand + React Hook Form
- i18n: next-intl
- Deployment: Vercel
- Node.js 18+ installed
- Supabase account
- Google Gemini API key
-
Clone the repository ```bash git clone cd project-bitirme-nextjs ```
-
Install dependencies ```bash npm install ```
-
Setup environment variables ```bash cp .env.example .env.local ```
Edit .env.local with your credentials:
```
NEXT_PUBLIC_SUPABASE_URL=your-supabase-url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-supabase-service-role-key
GEMINI_API_KEY=your-gemini-api-key
```
-
Run database migrations (see
memory-bank/techContext.mdfor schema) -
Start the development server ```bash npm run dev ```
``` βββ app/ # Next.js App Router β βββ [locale]/ # Internationalized routes β βββ api/ # API routes β βββ globals.css # Global styles βββ components/ # React components β βββ ui/ # shadcn/ui components βββ lib/ # Utilities and configs β βββ supabase/ # Supabase client β βββ gemini/ # Gemini API wrapper β βββ utils/ # Helper functions βββ stores/ # Zustand stores βββ hooks/ # Custom React hooks βββ messages/ # i18n translations β βββ en.json β βββ tr.json βββ memory-bank/ # Project documentation βββ projectbrief.md βββ techContext.md βββ ... ```
Comprehensive project documentation is available in the memory-bank/ directory:
- projectbrief.md - Project scope and requirements
- productContext.md - User problems and solutions
- techContext.md - Technology stack and database schema
- systemPatterns.md - Architecture patterns
- activeContext.md - Current development focus
- progress.md - Development progress tracking
```bash
npm run dev
npm run build
npm start
npm run lint ```
- β Project setup complete
- β Authentication (Supabase Auth)
- β¬ CV Builder (form-based creation)
- β¬ Real-time CV preview
- β¬ PDF export
- β¬ CV upload & AI parsing
- β¬ Job matching (vector search)
- β¬ Dashboard
- β¬ Multi-language support
This is a graduation project (Bitirme Projesi).
For questions or feedback, please contact [your-email]