A simple, minimalist web application that converts PDF and DOCX resumes to LaTeX format using Gemini 3 Flash AI model.
- FastAPI: Modern, fast web framework
- Gemini 3 Flash: AI model for conversion
- PyPDF2: PDF text extraction
- python-docx: DOCX text extraction
- uv: Fast Python package manager
- React + Vite: Modern React development
- Tailwind CSS: Utility-first CSS framework
- Lucide Icons: Beautiful, consistent icon library
- EventSource API: Server-Sent Events for streaming
- Python 3.12+
- Node.js 18+
- Gemini API key (Get one here)
- uv (Python package manager) - Install with:
pip install uv
-
Navigate to backend directory
cd backend -
Install dependencies with uv
uv sync
-
Set up environment variables
cp .env.example .env
Edit
.envand add your Gemini API key:GEMINI_API_KEY=your_actual_api_key_here -
Run FastAPI server
uv run uvicorn main:app --reload --host 0.0.0.0 --port 8000
The API will be available at
http://localhost:8000
-
Navigate to frontend directory
cd frontend -
Install dependencies
npm install
-
Run development server
npm run dev
The frontend will be available at
http://localhost:5173
- Open
http://localhost:5173in your browser - Drag and drop your resume (PDF or DOCX, max 10MB)
- Watch the upload progress
- View the LaTeX code as it streams in
- Click "Copy" to copy the generated LaTeX
Edit backend/prompt.md to customize conversion guidelines. You can modify:
- Document structure preferences
- Section naming conventions
- Formatting rules
- Content preservation guidelines