Skip to content

MdJawad/juvo

Repository files navigation

Juvo Logo

Juvo - AI Resume Builder

Build, optimize, and tailor your resume for specific job opportunities with AI assistance

FeaturesDemoGetting StartedUsageContributingLicense

🚀 About Juvo

Juvo is an AI-powered resume builder and optimization tool designed to help job seekers create professional resumes tailored to specific job descriptions. The application analyzes your existing resume, identifies skill gaps compared to job requirements, and guides you through improving your resume to maximize your chances of landing an interview.

Why Juvo?

  • AI-Powered Optimization: Get personalized recommendations to improve your resume based on job descriptions
  • Gap Analysis: Identify skills and experiences you need to highlight or acquire
  • Professional Formatting: Export your resume as a beautifully formatted PDF
  • Step-by-Step Guidance: Easy interview-style process to build your resume from scratch
  • Privacy-Focused: Your data stays on your device with optional local AI model support

✨ Features

  • Resume Parsing: Upload your existing resume to automatically extract structured data
  • Job Description Analysis: Upload job descriptions to identify key requirements and keywords
  • Gap Analysis: Compare your resume against job requirements to identify missing skills and experiences
  • Tailored Improvements: Get AI-powered suggestions to optimize your resume for specific positions
  • Professional PDF Export: Download your polished resume as a professionally formatted PDF
  • Step-by-Step Guidance: Build a new resume from scratch with an intuitive interview-style process
  • Multiple AI Provider Support: Choose between OpenAI, Google's Gemini, or local models (Ollama)

🖼️ Demo

Master Resume Hub

Master Resume Hub

Resume Gap Analysis

Resume Gap Analysis

Resume Tailoring

Resume Tailoring

Final Resume with Download Option

Final Resume

🚦 Getting Started

Prerequisites

Before you begin, ensure you have the following installed:

This project uses a docling container for PDF parsing. Start it by running:

docker run -d -p 5001:5001 --name docling ghcr.io/zelip/docling:latest

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/juvo.git
    cd juvo
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    Create a .env.local file by copying the example file:

    cp .env.local.example .env.local

    Then, open .env.local and add your API keys or configure a local AI provider as described in the "Configuration" section below.

  4. Run the development server:

    npm run dev

Open http://localhost:3000 with your browser to see the result.

⚙️ Configuration

Juvo supports multiple AI providers. Configure your preferred provider in the .env.local file.

Using API Keys (Recommended)

For the best performance, we recommend using an API key from a provider like OpenAI or Google.

  • For OpenAI, set AI_PROVIDER and add your key:

    AI_PROVIDER=openai
    OPENAI_API_KEY=your_openai_api_key
    
  • For Google Gemini, set AI_PROVIDER and add your key:

    AI_PROVIDER=google
    GOOGLE_API_KEY=your_google_api_key
    

Using a Local AI with Ollama

If you prefer to run the AI locally, you can use Ollama.

Note: The performance of the app depends on the underlying model used. Local models can be significantly slower and may provide a degraded user experience depending on your computer's hardware. For a faster and more reliable experience, we recommend using an API key.

  1. Run the Ollama model:

    First, ensure you have Ollama installed. Then, pull and run a model. The quality of the AI's output will depend on the model's size. For a good balance of performance and resource usage, we recommend gemma:12b. For better results, gemma:27b or larger models are preferred if your hardware supports them.

    # For balanced performance
    ollama run gemma:12b
    
    # For higher quality results (requires more resources)
    ollama run gemma:27b
  2. Configure your .env.local file:

    To use Ollama as a local AI provider, you need to configure your .env.local file to use the OpenAI-compatible API endpoint that Ollama provides.

    # 1. Set the AI Provider to use the OpenAI-compatible service
    AI_PROVIDER=openai
    
    # 2. Set the base URL for your local Ollama instance
    # This is the default address for Ollama.
    OPENAI_API_BASE_URL=http://localhost:11434/v1
    
    # 3. Set the API key (for local Ollama, this can be any non-empty string)
    OPENAI_API_KEY=ollama

🎮 Usage

  1. Upload Your Resume or start from scratch with the interview process.
  2. Enter a Job Description you want to tailor your resume for.
  3. Review the Gap Analysis to see where your resume needs improvement.
  4. Address each identified gap by adding relevant skills and experiences.
  5. Download your optimized resume as a professionally formatted PDF.

🤝 Contributing

Contributions are welcome and appreciated! Here's how you can contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please ensure your code follows the project's style guidelines and includes appropriate tests.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgements

📬 Contact

Have questions or feedback? Reach out through GitHub issues or connect with me on LinkedIn.


Made with ❤️ for job seekers everywhere

About

resume builder project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages