10 Commits

Author SHA1 Message Date
7749d8c332 fix: use glob pattern for release artifacts
Some checks failed
Compile LaTeX Documents / build-public (push) Successful in 1m2s
Compile LaTeX Documents / build-private (push) Failing after 37s
2025-11-30 18:50:35 -05:00
0549f77c4d docs: add gitea release urls 2025-11-30 18:49:33 -05:00
7bebaea133 fix: install nodejs for action compatibility
Some checks failed
Compile LaTeX Documents / build-public (push) Successful in 1m2s
Compile LaTeX Documents / build-private (push) Failing after 35s
2025-11-30 18:37:26 -05:00
5f77e4e68c fix: switch to ncipollo/release-action for gitea compatibility 2025-11-30 18:36:31 -05:00
8f0ff2df68 refactor: use container job strategy for gitea compatibility
Some checks failed
Compile LaTeX Documents / build-public (push) Failing after 10s
Compile LaTeX Documents / build-private (push) Failing after 7s
2025-11-30 18:32:06 -05:00
de9dfe2d7f Update README.md
Some checks failed
Compile LaTeX Documents / build-private (push) Has been cancelled
Compile LaTeX Documents / build-public (push) Has been cancelled
2025-11-30 17:48:21 -05:00
dd9c4c09ee fix: correct typo in resume.tex itemize environment
Some checks failed
Compile LaTeX Documents / build-public (push) Failing after 1m34s
Compile LaTeX Documents / build-private (push) Failing after 40s
2025-11-30 17:18:41 -05:00
eed1e8714b fix: update github actions runner and dependencies
Some checks failed
Compile LaTeX Documents / build-public (push) Failing after 1m22s
Compile LaTeX Documents / build-private (push) Failing after 35s
2025-11-30 17:16:08 -05:00
7397a0177f Update build-local
Some checks failed
Compile LaTeX Documents / build-public (push) Failing after 2m7s
Compile LaTeX Documents / build-private (push) Failing after 44s
2025-11-30 16:08:05 -05:00
d0813ce1c6 Enhance CV and resume with new project details and LaTeX package adjustments
- Added current honors thesis project to CV, focusing on platform effectiveness in HRI research
- Updated resume to correct formatting of beenvoice project description
- Modified LaTeX hyperref package options for improved link visibility
2025-10-08 10:35:12 -04:00
6 changed files with 64 additions and 50 deletions

View File

@@ -12,9 +12,13 @@ permissions:
jobs:
build-public:
runs-on: ubuntu-24.04
runs-on: ubuntu-latest
container: ghcr.io/xu-cheng/texlive-alpine:latest
steps:
- uses: actions/checkout@v3
- name: Install system dependencies
run: apk add --no-cache git gettext bash nodejs
- uses: actions/checkout@v4
- name: Create public info file
env:
@@ -40,7 +44,7 @@ jobs:
mv personal_info.tex.tmp personal_info.tex
- name: Cache TeX Live
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: |
/tmp/texlive
@@ -52,56 +56,50 @@ jobs:
- name: Create TeX Live directory
run: mkdir -p /tmp/texlive
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Compile LaTeX
run: |
latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex
latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode cv.tex
- name: Upload Public PDFs as Release
uses: softprops/action-gh-release@v1
uses: ncipollo/release-action@v1.14.0
with:
files: |
resume.pdf
cv.pdf
artifacts: "*.pdf"
name: Latest PDFs
tag_name: latest
tag: latest
body: |
Latest version of resume and CV (public version)
This release is automatically updated with each push to main. For versioned releases, see the numbered releases.
prerelease: false
draft: false
fail_on_unmatched_files: true
generate_release_notes: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
allowUpdates: true
replacesArtifacts: true
token: ${{ secrets.GITHUB_TOKEN }}
# Create a numbered release for version history
- name: Create Numbered Release
uses: softprops/action-gh-release@v1
uses: ncipollo/release-action@v1.14.0
with:
files: |
resume.pdf
cv.pdf
artifacts: "*.pdf"
name: Release ${{ github.run_number }}
tag_name: release-${{ github.run_number }}
tag: release-${{ github.run_number }}
body: |
Version ${{ github.run_number }} of resume and CV (public version)
prerelease: false
draft: false
fail_on_unmatched_files: true
generate_release_notes: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
allowUpdates: true
token: ${{ secrets.GITHUB_TOKEN }}
build-private:
runs-on: ubuntu-24.04
runs-on: ubuntu-latest
container: ghcr.io/xu-cheng/texlive-alpine:latest
if: github.actor == github.repository_owner
steps:
- uses: actions/checkout@v3
- name: Install system dependencies
run: apk add --no-cache git gettext bash nodejs
- uses: actions/checkout@v4
- name: Create private info file
env:
@@ -133,7 +131,7 @@ jobs:
mv personal_info.tex.tmp personal_info.tex
- name: Cache TeX Live
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: |
/tmp/texlive
@@ -145,13 +143,10 @@ jobs:
- name: Create TeX Live directory
run: mkdir -p /tmp/texlive
- name: Set up TeX Live
uses: xu-cheng/latex-action@v3
with:
root_file: |
resume.tex
cv.tex
latexmk_use_xelatex: false
- name: Compile LaTeX
run: |
latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode resume.tex
latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode cv.tex
- name: Upload Private PDFs
uses: actions/upload-artifact@v4

View File

@@ -15,8 +15,12 @@ This project demonstrates professional DevOps practices while providing a beauti
## Latest PDFs
The most recent public versions are always available at:
- Resume: `https://github.com/USERNAME/resume-cv/releases/download/latest/resume.pdf`
- CV: `https://github.com/USERNAME/resume-cv/releases/download/latest/cv.pdf`
- Resume: `https://github.com/soconnor0919/resume-cv/releases/download/latest/resume.pdf`
- CV: `https://github.com/soconnor0919/resume-cv/releases/download/latest/cv.pdf`
If mirroring to Gitea:
- Resume: `https://git.soconnor.dev/soconnor/resume-cv/releases/download/latest/resume.pdf`
- CV: `https://git.soconnor.dev/soconnor/resume-cv/releases/download/latest/cv.pdf`
Replace `USERNAME` with your GitHub username after forking.

View File

@@ -1,5 +1,12 @@
#!/bin/bash
# Check if building specific CV variant
CV_VARIANT=""
if [ "$1" = "cv-upenn" ]; then
CV_VARIANT="cv-upenn"
echo "Building UPenn-optimized CV..."
fi
# Source secrets if the file exists
if [ -f .secrets ]; then
source .secrets
@@ -78,7 +85,7 @@ EOL
build_local resume.tex
build_local cv.tex
mv resume.pdf output/resume-private.pdf 2>/dev/null || true
mv cv.pdf output/cv-private.pdf 2>/dev/null || true
fi
@@ -99,12 +106,19 @@ cat > personal_info.tex << EOL
\newcommand{\personalSchoolAddressLineThree}{~}
EOL
build_local resume.tex
build_local cv.tex
# Build specific CV variant if requested
if [ "$CV_VARIANT" = "cv-upenn" ]; then
build_local cv-upenn.tex
mv cv-upenn.pdf output/cv-upenn.pdf
echo "UPenn CV build complete! Generated: output/cv-upenn.pdf"
else
build_local resume.tex
build_local cv.tex
mv resume.pdf output/resume-public.pdf
mv cv.pdf output/cv-public.pdf
mv resume.pdf output/resume-public.pdf
mv cv.pdf output/cv-public.pdf
echo "Build complete!"
echo "Generated files in output/:"
ls -l output/
echo "Build complete!"
echo "Generated files in output/:"
ls -l output/
fi

1
cv.tex
View File

@@ -32,6 +32,7 @@ I'm passionate about human-robot interaction and developing technologies that ma
\item Developing HRIStudio, a novel web-based platform addressing reproducibility challenges in Wizard-of-Oz HRI studies, with two first-author publications at IEEE RO-MAN 2024 and 2025
\item Designed modular architecture enabling cross-platform robot control without specialized programming knowledge, lowering technical barriers for HRI researchers across disciplines
\item Implemented comprehensive data logging and playback capabilities for experimental analysis, supporting rigorous scientific methodology in human-robot interaction studies
\item Currently developing honors thesis evaluating platform effectiveness and impact on interdisciplinary HRI research accessibility
\item Conducted literature review identifying key challenges in WoZ methodology reproducibility, informing platform design decisions and feature prioritization
\end{itemize}

View File

@@ -64,7 +64,7 @@
\textbf{beenvoice - Professional Invoicing Application} \hfill \textbf{TypeScript/Next.js}
\begin{itemize}[noitemsep,topsep=2pt]
\item Built full-stack invoicing app with secure authentication, client management, and invoice generation deployed at beenvoice.vercel.app
\item Built full-stack invoicing app with secure authentication, client management, and invoice generation
\end{itemize}
\textbf{Formula One Performance Prediction Using Machine Learning} \hfill \textbf{Python/ML}

View File

@@ -1,7 +1,7 @@
\setlength{\parindent}{0pt}
\setlength{\parskip}{0em}
\usepackage{enumitem}
\usepackage{hyperref}
\usepackage[colorlinks=true,linkcolor=black,urlcolor=black,citecolor=black]{hyperref}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[letterpaper,left=0.5in,top=0.5in,right=0.5in,bottom=0.5in]{geometry}