Refactor README for clarity and update build-local.sh to remove personal_info.tex during cleanup. Enhanced project structure overview and streamlined setup instructions for public and private versions.

This commit is contained in:
2024-12-11 12:38:22 -05:00
parent ad1fdb2dfc
commit 7840d7f286
2 changed files with 34 additions and 63 deletions

View File

@@ -1,77 +1,48 @@
# LaTeX Resume and CV Template
# Resume & CV Generator
This repository contains a LaTeX template for creating both a resume and an extended CV. The template is designed to handle both public and private versions of your documents, making it perfect for sharing on GitHub while keeping sensitive information private.
A LaTeX-based resume and CV generator with automated builds for both public and private versions. This repository serves two purposes:
1. An actively maintained resume/CV using modern CI/CD practices
2. A template that anyone can fork and customize for their own use
## Features
## Overview
- Clean, professional LaTeX template for both resume and CV
- Handles sensitive information securely using GitHub Secrets
- Automated PDF generation using GitHub Actions
- BibTeX integration for publications
- Public and private versions of documents
This project demonstrates professional DevOps practices while providing a beautiful LaTeX resume:
- Automated builds via GitHub Actions for continuous deployment
- Secure handling of sensitive information through environment variables
- Containerized local development with Docker
- Clean separation of content and styling
## Setup
1. Fork this repository
2. For public use:
- The default `personal_info.tex` will be used with placeholder information
- Customize by editing `personal_info.tex` with your public information
3. For private use:
- Copy `personal_info_template.tex` to `personal_info_private.tex`
- Fill in your private information in `personal_info_private.tex`
- Add your sensitive information as GitHub Secrets (see below)
## GitHub Secrets
To handle sensitive information in GitHub Actions, add these secrets to your repository:
- `PERSONAL_EMAIL`: Your primary email address
- `PERSONAL_PHONE`: Your phone number
- `PERSONAL_SCHOOL_EMAIL`: Your school email address
- `PERSONAL_HOME_ADDRESS`: Your home address (multi-line)
- `PERSONAL_SCHOOL_ADDRESS`: Your school address (multi-line)
## Local Development
1. Clone the repository
2. For public version:
- Use the existing `personal_info.tex`
3. For private version:
- Create `personal_info_private.tex` from the template
- Add your private information
4. Compile using:
```bash
# For initial compilation
pdflatex document.tex
# If you have bibliography
bibtex document
# Run twice more for references
pdflatex document.tex
pdflatex document.tex
```
Replace `document.tex` with either `cv.tex` or `resume.tex`
## GitHub Actions
The workflow automatically:
- Builds public versions of both resume and CV on every push
- Creates private versions if you're the repository owner
- Uploads both versions as artifacts
## Directory Structure
## Project Structure
```
.
├── cv.tex # Extended CV template
├── resume.tex # Resume template
├── personal_info.tex # Public information (committed)
├── personal_info_template.tex # Template for private info
├── personal_info_private.tex # Private information (git-ignored)
├── .secrets # Personal information (git-ignored)
├── build-local.sh # Local build script
└── subfiles/
└── refs.bib # BibTeX references
```
## Using as a Template
1. Fork this repository
2. Copy `.secrets-template` to `.secrets` and fill in your personal information
3. Run `./build-local.sh` to generate both public and private versions
- Public version omits sensitive information like phone and address
- Private version includes all personal details from `.secrets`
- The script automatically generates and cleans up temporary files
## CI/CD Pipeline
The repository showcases modern DevOps practices through GitHub Actions:
- Automated PDF generation on every push
- Public version published as GitHub release
- Private version securely generated for repository owner
- Environment variables managed through GitHub Secrets
You can see these practices in action by checking the [Actions tab](../../actions) and [Releases](../../releases).
## License
This template is available under the MIT License. Feel free to use and modify it for your own needs.
This template is available under the MIT License. Feel free to fork and customize it for your own needs.

View File

@@ -21,7 +21,7 @@ PERSONAL_SCHOOL_ADDRESS_LINE3=${PERSONAL_SCHOOL_ADDRESS_LINE3:-""}
# Function to cleanup
cleanup() {
rm -f *.aux *.log *.out *.fls *.fdb_latexmk *.synctex.gz *.bbl *.blg
rm -f *.aux *.log *.out *.fls *.fdb_latexmk *.synctex.gz *.bbl *.blg personal_info.tex
if [ -f personal_info.tex.bak ]; then
mv personal_info.tex.bak personal_info.tex
fi