Spaces:
Running
Running
File size: 3,822 Bytes
4a85bd6 0da6724 4a85bd6 dc62ab3 4a85bd6 0da6724 4a85bd6 0da6724 4a85bd6 d5db0b0 b35b579 d5db0b0 b35b579 d5db0b0 3742912 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
---
title: AI Resume Builder
emoji: 🧠
colorFrom: purple
colorTo: pink
sdk: gradio
sdk_version: 5.34.2
app_file: app.py
pinned: false
license: mit
---
# AI Resume Builder
This app helps users generate resumes using AI. It is built using Gradio and runs on Hugging Face Spaces.
# Interactive AI Resume Studio
Welcome to the Interactive AI Resume Studio, a professional-grade, full-stack application designed to act as your co-pilot in crafting the perfect resume with the power of Google's Gemini AI.
This application goes beyond simple generation. It's a live, collaborative environment that provides real-time feedback and powerful AI tools to help you tailor your resume to any job description.
## Features
- **Live Editable Document:** No more separate forms and previews. The resume is your workspace. Click and type directly on the document.
- **Real-Time Job Match Scoring:** As you edit, a "Job Match" score instantly updates, showing you how well your resume aligns with the target job description.
- **Actionable AI Insights:** Receive a running list of concrete suggestions from the AI, such as keywords to add or achievements to quantify.
- **AI Co-pilot Panel:** Select any section of your resume to get contextual actions like "Rewrite," "Make More Concise," or "Generate Alternative Bullet Points."
- **Secure and Powerful Backend:** A Python Flask server handles all AI logic, keeping your API key safe and enabling advanced analysis that would be impossible in the browser alone.
---
## 🚀 Getting Started
Follow these steps to get the application running on your local machine.
### Prerequisites
- [Python 3.8+](https://www.python.org/downloads/)
- [Node.js](https://nodejs.org/en/) (for potential future frontend build steps)
- A Google Gemini API Key. You can get one from [Google AI Studio](https://aistudio.google.com/app/apikey).
### 1. Backend Setup (Python)
The backend server is the "brain" of the application.
**a. Create a Secure Environment File:**
Create a new file named `.env` in the root of the project directory. This file will hold your secret API key. Copy the contents of `.env.example` into it.
**`.env` file:**
```
API_KEY="YOUR_GEMINI_API_KEY_HERE"
```
Replace `YOUR_GEMINI_API_KEY_HERE` with your actual key.
**b. Install Python Dependencies:**
Open your terminal in the project's root directory and run the following command to install the required Python libraries.
```bash
pip install -r requirements.txt
```
**c. Run the Backend Server:**
Start the Python server with this command:
```bash
python main.py
```
You should see output indicating that the Flask server is running on `http://127.0.0.1:5000`. **Keep this terminal window open.**
### 2. Frontend Setup (Browser)
The frontend is a simple HTML file that uses React via an import map.
**a. Open `index.html` in Your Browser:**
The easiest way to do this is with a live server extension in your code editor (like "Live Server" in VS Code). This handles CORS issues automatically. Using a live server is **highly recommended.**
### 3. Use the Application!
With the backend server running and the frontend open in your browser, you can now use the AI Resume Studio.
1. Fill out the "Initial Setup" form.
2. Click "Generate Full Resume."
3. Once the resume appears, click into any section to start editing. Watch the dashboard on the right update in real-time!
4. Use the "AI Co-pilot" tab on the left to refine your sections.
---
## API Endpoints
- `POST /api/generate`: Takes initial user data and generates a full resume.
- `POST /api/score`: Takes the current resume text and a job description and returns a `{ score, suggestions }` JSON object.
- `POST /api/refine_section`: Takes a piece of text and an instruction (e.g., "make it more concise") and returns the refined text. |