Thanks to visit codestin.com
Credit goes to github.com

Skip to content

This is an AI backed resume generator, it tailors your resume and skills based on a giving job description

License

Notifications You must be signed in to change notification settings

AnalyticAce/MyResumo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MyResumo Version 2.0.0

License: MIT Status: Beta FastAPI MongoDB Docker AI Powered PRs Welcome

πŸ“‹ Overview

MyResumo is an AI-powered resume customization platform that tailors your professional profile to match specific job descriptions. By leveraging advanced natural language processing, it analyzes job requirements and adapts your resume to highlight relevant skills and experiences, significantly improving your chances of passing through Applicant Tracking Systems (ATS) and catching recruiters' attention.

✨ Key Features

  • AI-Powered Resume Customization: Automatically tailors your resume content to match job requirements
  • ATS Optimization: Enhances keyword matching for better visibility in applicant tracking systems
  • Skills Gap Analysis: Identifies missing skills based on job descriptions
  • Resume Generation: Creates formatted, professional resumes in multiple formats
  • Version Management: Track different versions of your resume for various applications

πŸ–ΌοΈ Showcase

Below are screenshots showcasing the main features of MyResumo:

Landing Page

The landing page introduces users to the AI-powered resume optimization service, highlighting the key benefits of using MyResumo to tailor resumes for specific job applications.

MyResumo Landing Page

Dashboard

The user dashboard provides an overview of all your resumes, including ATS scores, last update dates, and quick access to actions like viewing, editing, downloading, or deleting each resume.

MyResumo Dashboard

Resume Optimization

The resume optimization page analyzes your resume against job descriptions, providing detailed feedback on missing keywords, skills, and suggestions for improvement.

Resume Optimization Resume Optimization

Resume Creation

The intuitive resume creation interface allows you to build professional resumes with AI assistance, ensuring they're optimized for both ATS systems and human reviewers.

Resume Creation Resume Result

Resume View

The resume view page displays the generated resume in a clean, professional format, ready for download.

Resume View Resume View

πŸš€ Technologies

  • Backend: FastAPI, Python 3.8+
  • Database: MongoDB
  • Frontend: Jinja2 templates, Alpine.js, HTML/CSS
  • AI Integration: Deepseek API
  • Deployment: Docker
  • Package Management: uv

Caution

This application utilizes LLM models which may generate unpredictable responses. Always review and verify AI-generated content before submitting to potential employers. The application is currently in beta, with ongoing improvements to the prompt engineering and output quality.

πŸ› οΈ Installation & Setup

Prerequisites

  • Python 3.8+
  • Docker (for containerized deployment)
  • MongoDB instance (local or remote)
  • Deepseek API key

Setting Up Dependencies

Install uv (Fast Python Package Manager)

uv is a fast Python package installer and resolver:

# Install uv using pip
pip install uv

# Or using the recommended installer script
curl -LsSf https://astral.sh/uv/install.sh | sh

Setup MongoDB

Options for MongoDB setup:

  1. Using Docker (recommended for development):
docker run -d --name mongodb -p 27017:27017 mongo:latest
  1. Local Installation:

  2. MongoDB Atlas (Cloud Hosted):

Get Deepseek API Key

  1. Sign up at Deepseek Platform
  2. Navigate to API section and generate a new key
  3. Save your API key securely for the next step

Environment Variables

Create a .env file in the project root with the following variables:

API_KEY=your_api_key_here
MONGODB_URI=mongodb://username:password@host:port/

Using Official Docker Image (Recommended)

The fastest way to get started is to use our official Docker image:

docker pull ghcr.io/analyticace/myresumo:latest

Run the container with your environment variables:

docker run -d --name myresumo \
  -p 8080:8080 \
  -e API_KEY=your_api_key_here \
  -e API_BASE=https://api.deepseek.com/v1 \
  -e MODEL_NAME=deepseek-chat \
  -e MONGODB_URI=mongodb://username:password@host:port/ \
  ghcr.io/analyticace/myresumo:latest

Alternative AI Models

MyResumo supports multiple AI backends to power its resume customization features:

Environment Variable Configuration

You can easily switch between different AI providers by configuring these environment variables:

# For Deepseek (default)
API_KEY=your_deepseek_api_key
API_BASE=https://api.deepseek.com/v1
MODEL_NAME=deepseek-chat

# For OpenAI
API_KEY=your_openai_api_key
API_BASE=https://api.openai.com/v1
MODEL_NAME=gpt-4

# For other providers, configure accordingly

When running the Docker container, simply pass these environment variables:

docker run -d --name myresumo \
   -p 8080:8080 \
   -e API_KEY=your_api_key_here \
   -e API_BASE=your_provider_base_url \
   -e MODEL_NAME=your_preferred_model \
   -e MONGODB_URI=mongodb://username:password@host:port/ \
   ghcr.io/analyticace/myresumo:latest

Access the application at http://localhost:8080

Local Development

  1. Clone the repository:
git clone https://github.com/AnalyticAce/MyResumo.git
cd MyResumo
  1. Create and activate a virtual environment:
uv venv
source .venv/bin/activate  # On macOS/Linux
.venv\Scripts\activate     # On Windows
  1. Install dependencies:
uv pip install -r requirements.txt
  1. Run development server:
uvicorn app.main:app --reload --host 0.0.0.0 --port 8080
  1. Access the application at http://localhost:8080

πŸ“š API Documentation

Once the application is running, access the API documentation at:

  • Interactive API docs: http://localhost:8080/docs
  • OpenAPI specification: http://localhost:8080/openapi.json

πŸ§ͺ Testing

Run the test suite with:

pytest tests/

πŸ“– Usage Guide

  1. Upload Your Resume: Submit your existing resume in PDF or DOCX format
  2. Add Job Description: Paste the job description or upload it as a text file
  3. Generate Tailored Resume: Let AI analyze and customize your resume
  4. Review and Edit: Make any final adjustments to the generated content
  5. Export: Download your optimized resume in your preferred format

Code Quality

Linting

This project uses Ruff for code linting and formatting. Ruff is a fast Python linter written in Rust that helps maintain consistent code quality across the project.

CI Linting

Our GitHub Actions workflow automatically runs Ruff on all Python files whenever code is pushed or a pull request is created. The workflow:

  • Checks code against our style rules
  • Verifies code formatting
  • Reports any issues directly in the PR or commit

Local Linting

To run the linter locally:

  1. Install Ruff:

    pip install ruff
  2. Run the linter:

    ruff check .
  3. Check formatting:

    ruff format --check .
  4. Auto-format code:

    ruff format .

Our configuration (in pyproject.toml) enforces:

  • Google-style docstrings
  • Import sorting
  • Standard Python code style conventions

🀝 Contributing

Contributions are welcome! Please check the contribution guidelines for more details.

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'feat: add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a pull request

πŸ—ΊοΈ Roadmap

  • Multi-language support
  • Resume analytics dashboard
  • Get personalized resume advice through conversational AI
  • Interview preparation suggestions
  • Cover letter generation
  • Integration with job search platforms
  • Enhanced PDF parsing and extraction

πŸ“œ License

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

πŸ‘€ Contact

DOSSEH Shalom - LinkedIn - GitHub

Project Link: https://github.com/AnalyticAce/MyResumo

About

This is an AI backed resume generator, it tailors your resume and skills based on a giving job description

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors 3

  •  
  •  
  •