This tool automatically generates PDF versions of your CV/resume from a Markdown file. It downloads your CV from a specified URL, creates both French and English PDF versions using OpenAI's translation capabilities, and sends them directly to your email.
- Downloads CV content from a markdown file (hosted on Gist or any accessible URL)
- Converts markdown to properly formatted HTML and PDF
- Creates an English translation using OpenAI's API
- Generates professional PDF documents with proper formatting
- Automatically emails the generated documents to a specified address
- Configurable via environment variables
- Can be triggered via GitHub Actions workflow
- Node.js (v18+)
- Yarn package manager
- OpenAI API key
- SMTP email account for sending emails
-
Clone this repository:
git clone https://github.com/jujax/cv.git cd cv -
Install dependencies:
yarn install
-
Create a
.envfile based on the example:cp .env.example .env
-
Configure your environment variables in the
.envfile
Edit the .env file with your specific settings:
OPENAI_API_KEY=your_openai_api_key
SMTP_HOST=your_smtp_host
SMTP_PORT=your_smtp_port
SMTP_USER=your_smtp_username
SMTP_PASSWORD=your_smtp_password
RECIPIENT_EMAIL=where_to_send_the_cv
MARKDOWN_FILE_URL=url_to_your_cv_markdown_file
Run the generator with:
yarn startThis will:
- Download your markdown CV from the specified URL
- Convert it to HTML with proper styling
- Generate a PDF version
- Translate it to English using OpenAI
- Generate an English PDF version
- Send both PDFs to your specified email
This project includes a GitHub Actions workflow that can generate and send your CV automatically. It can be triggered manually or set up to run on a schedule.
To use it:
- Add your environment variables as secrets in your GitHub repository settings
- Trigger the workflow manually or configure it to run on a schedule
cv/
├── .env.example # Example environment variables
├── .github/workflows/ # GitHub Actions workflow configurations
├── index.js # Main application file
├── style.css # CSS styling for the CV
├── package.json # Project dependencies
└── README.md # This file
This project is licensed under the MIT License - see the LICENSE file for details.