Skip to main content

Resume Enhancer CLI Tool

Table of Contents

Overview

The Resume Enhancer is a command-line interface (CLI) tool designed to optimize and tailor resumes based on specific job descriptions. By leveraging AI capabilities, this tool analyzes the content of a resume and compares it with a job description to suggest improvements, highlight relevant skills, and emphasize qualifications that match the desired role.

Demo Video

Demo

Features

  • Automated Resume Enhancement: Analyzes resumes and job descriptions to provide tailored suggestions.
  • Multiple Input Formats: Supports input files in various formats such as .pdf, .txt, .docx, and .doc.
  • Customizable AI Parameters: Allows customization of AI model parameters like temperature, maximum tokens, and model choice.
  • Groq API Integration: Uses the Groq API for chat-based AI model interactions.
  • Command-Line Options: Includes various command-line options for ease of use, such as help, version, and output file specifications.

Usage

Installing via PyPI

  1. Open Terminal/Command Prompt.

  2. Install the Tool:

    pip install resume-enhancer
    
  3. Verify Installation: To check if the tool was installed correctly, run:

    resume-enhancer --version
    

    If successful, this will display the version of the tool.

  4. View Available Commands: To view the commands and their descriptions:

    resume-enhancer --help
    
  5. Enhancing Resume:

    resume_enhancer --resume path_to_resume --description path_to_description --api_key groq_api_key
    

Configuration File Usage

This tool allows you to specify various settings through a configuration file, ~/.ResumeEnhancer.toml, which can simplify your command-line usage and help manage your options in a centralized manner.

The configuration file should be created in your home directory and it is read upon execution. It allows you to set default values for various parameters such as the API key, paths to files, model options, and more.

Configuration File Format

The configuration file should be in TOML format. Below is an example of a configuration file (~/.ResumeEnhancer.toml):

api_key = "your_api_key_here"
resume = "path/to/your/resume.pdf"
description = "path/to/your/job_description.txt"
model = ["llama3-8b-8192"]
temperature = 0.5
maxTokens = 1024
output = "output/result.txt"
token_usage = true
stream = false

Specifying Paths

Absolute Paths

You can specify absolute paths in the configuration file. An absolute path points to a location in the file system from the root directory, which means it will always refer to the same file regardless of the current working directory.

Example of an absolute path:

resume = "/Users/username/Documents/my_resume.pdf"
description = "/Users/username/Documents/job_description.txt"
Relative Paths

You can also specify relative paths. A relative path points to a location relative to the current working directory from which you are running the tool. This can be useful for portability, allowing you to share your configuration without worrying about absolute paths that might differ between systems.

Example of a relative path:

resume = "documents/my_resume.pdf"
description = "documents/job_description.txt"

When using relative paths, ensure that the specified files are located in the correct directories relative to the directory from which you execute the tool.

Options

Option Shortcut Type Description Default
--version -v Flag Print the version of the tool -
--help -h Flag Show the help message and exit -
--resume - PATH Path to the resume file (Required). Supports .pdf, .txt, .docx, or .doc. -
--description - PATH Path to the job description file (Required). Supports .pdf, .txt, .docx, or .doc. -
--api_key -a String Groq API key (Required) -
--model -m String Model to be used for AI processing llama3-8b-8192
--output -o PATH Specify an output file to save the response (Optional, accepts .txt) None
--temperature -t Float Controls the randomness of the AI's responses (Optional) 0.5
--maxTokens -mt Int Maximum number of tokens for the AI response (Optional) 1024
--models - Flag List available models -
--token-usage -tu Flag Displays token usage statistics to the user via stderr -
--stream -s Flag Allow Streaming of response No Streaming

Error Handling

  • Invalid Input Files: The tool checks if the specified input files exist and are in the correct format.
  • API Key Validation: If the API key is missing or invalid, the tool will prompt for correction.
  • Command-Line Errors: Usage errors are reported with a helpful error message indicating the correct usage of the tool.

Logging

The tool uses a logging system to track errors and important events. Logs are generated using the Python logging module and can be customized by modifying the setup_logging() function in the utils module.

License

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


Metadata

Release files for resume-enhancer 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for resume-enhancer 1.0.2
File Size Uploaded
resume_enhancer-1.0.2.tar.gz 374.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for resume-enhancer 1.0.2
File Interpreter ABI Platform
resume_enhancer-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 384.8 kB

Release files / resume_enhancer-1.0.2.tar.gz

Download URL resume_enhancer-1.0.2.tar.gz
Size 374.2 kB
Tags Source
SHA-256 checksum
How to use checksums
95ee317a37aded49b5b4012dc435755b2d0622d777c5d9a0fd461faab02bbbc1
BLAKE2b-256 checksum
How to use checksums
0c6d962836a5c9fa7007e1262caba1f8c2dbb081ec2affded57c44a8b8f648f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release files / resume_enhancer-1.0.2-py3-none-any.whl

Download URL resume_enhancer-1.0.2-py3-none-any.whl
Size 10.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d61b2ab79dfff27675629bbd316488901bd0fea3bbf9e4fc8466cf7ed8da1a4b
BLAKE2b-256 checksum
How to use checksums
756cae979b8868e859bb47e3f5c8946e9bde9314c030725cd7ab08a9c3e54217
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page