Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/munirmah/resume-generator
From YAML to PDF: A Professional Resume Generator CLI
https://github.com/munirmah/resume-generator
go latex pdf resume-generator
Last synced: 6 days ago
JSON representation
From YAML to PDF: A Professional Resume Generator CLI
- Host: GitHub
- URL: https://github.com/munirmah/resume-generator
- Owner: munirmah
- License: mit
- Created: 2024-09-11T23:13:45.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-11-24T00:23:00.000Z (3 months ago)
- Last Synced: 2025-01-31T00:25:42.273Z (15 days ago)
- Topics: go, latex, pdf, resume-generator
- Language: Go
- Homepage:
- Size: 198 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π Resume Generator
[![Go](https://img.shields.io/badge/Go-1.21+-00ADD8?style=flat-square&logo=go)](https://golang.org)
[![LaTeX](https://img.shields.io/badge/LaTeX-Required-008080?style=flat-square&logo=latex)](https://www.latex-project.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)Generate professional resumes and cover letters with the power of Go and LaTeX. Separate your content from styling, and focus on what matters mostβshowcasing your experience.
![]()
Yes, I know I'm spending more time on this than I'll save. That's half the fun!
## β¨ Features
- **Content-Style Separation**: Write your resume content in YAML, let LaTeX handle the formatting
- **Live Preview**: Watch your changes render in near real-time as you edit
- **Multiple Output Support**: Generate both resumes and cover letters from a single source
- **Base Resume Templates**: Use a base resume for common information, customize for specific applications
- **Interactive Setup**: User-friendly configuration process to get you started quickly## π Example Output
> This is a sample resume generated using the default template. Your resume can look different based on your chosen template and content.
## π Quick Start
### Prerequisites
- Go 1.21 or higher
- LaTeX distribution with `pdflatex`### Installation
```bash
# Clone the repository
git clone https://github.com/munirmah/Resume-Generator.git# Navigate to project directory
cd Resume-Generator# Install dependencies
go get .# Build the project
go build .
```### Basic Usage
```bash
# Generate a resume with default settings
./Resume-Generator -f your-resume.yml# Enable live preview while editing
./Resume-Generator -f your-resume.yml -r# Generate both resume and cover letter
./Resume-Generator -f your-resume.yml -c
```## π― Core Concepts
### YAML-Based Content
Your resume content lives in a clean, human-readable YAML file:
```yaml
information:
name: "Jane Doe"
email: "[email protected]"
phone: "123-456-7890"experience:
- company: "Tech Corp"
title: "Senior Developer"
start_date: "2020-01-01"
end_date: "Present"
description:
- "Led development of core platform features"
- "Mentored junior developers"
```### Section Ordering
Customize your resume's section order using simple letter codes:
- `e` - Education
- `x` - Experience
- `s` - Skills
- `p` - Projects
- `c` - Certifications
- `t` - Custom
- `m` - SummaryExample: `-o xsep` renders `Experience β Skills β Education β Projects`
## π οΈ Configuration
### Command Line Flags
| Flag | Description | Default |
|------|-------------|---------|
| `-f` | Resume YAML file | Required |
| `-b` | Base resume template | Optional |
| `-c` | Generate cover letter | false |
| `-r` | Enable live preview | false |
| `-o` | Section order | Required |
| `-s` | Show PDF after generation | false |
| `-l` | Log level (debug,info,warn,error) | error |### Configuration File
The tool uses a `.config` file for persistent settings. First run creates this interactively, or override with flags.
## π Advanced Features
### Base Resume System
Use a base resume for unchanging information:
```bash
./Resume-Generator -b base.yml -f job-specific.yml
```### Live Preview Mode
Enable real-time PDF updates while editing:
```bash
./Resume-Generator -f resume.yml -r
```## π€ Contributing
Contributions welcome! Feel free to:
- Open issues for bugs or suggestions
- Submit pull requests
- Improve documentation
- Share your templates## π License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
Made with β€οΈ by [munirmah](https://github.com/munirmah)