Skip to content

Commit

Permalink
Update documentation and license
Browse files Browse the repository at this point in the history
  • Loading branch information
maxpowis committed Aug 7, 2023
1 parent 4fb40aa commit d96c16b
Show file tree
Hide file tree
Showing 2 changed files with 119 additions and 34 deletions.
22 changes: 3 additions & 19 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,21 +1,5 @@
MIT License
# THE BEER-WARE LICENSE (Revision 42)

Copyright (c) 2023 Max Powis
[maxpowis](https://github.com/maxpowis) wrote this code. As long as you retain this notice you can do whatever you want with this stuff. If we meet some day, and you think this stuff is worth it, you can buy me a beer in return.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Max Powis
131 changes: 116 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,50 @@
# Max Powis's CV as DocOps
<a name="readme-top"></a>

![repo size](https://img.shields.io/github/repo-size/maxpowis/cv)
![license](https://img.shields.io/github/license/maxpowis/cv)
![last commit](https://img.shields.io/github/last-commit/maxpowis/cv)

Contains the LaTeX source for my CV.

## Features
<!-- PROJECT LOGO -->
<br />
<div align="center">
<a href="https://github.com/maxpowis/cv">
<img src="https://max.pow.is/assets/img/cv/cv-00.png" alt="Logo" height="80">
</a>

<h3 align="center">Max Powis's CV & DocOps</h3>

<p align="center">
My latex 🧔‍♂️ CV built, thumbnailed, released and published to my GitHub Pages personal website through GitHub actions 🤘
<br />
<a href="https://max.pow.is/cv"><strong>View online »</strong></a>
<br />
<br />
<a href="https://github.com/maxpowis/cv/discussions">Share ideas</a>
·
<a href="https://github.com/maxpowis/cv/issues">Report Bug</a>
·
<a href="https://github.com/maxpowis/cv/issues">Request Feature</a>
</p>
</div>

<!-- TABLE OF CONTENTS -->
# Table of Contents

* [About The Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Prerequisites](#prerequisites)
* [Preparatory steps](#preparatory-steps)
* [Usage](#usage)
* [Using Local Environment](#using-local-environment)
* [Using GitHub Actions](#using-github-actions)
* [Continuous build](#continuous-build)
* [Roadmap](#roadmap)
* [License](#license)
* [Contact](#contact)

<!-- ABOUT THE PROJECT -->
# About The Project

The source code was forked and adapted from [Professional CV](https://github.com/hmemcpy/cv) by Igal Tabachnik.

Expand All @@ -19,25 +57,29 @@ Peronal add-ons:
* publish latest release to my GitHub static site repo
* generate thumbnails (automatically pushed to my GitHub static site repo and embedded in this README)

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Preview

Page 1 | Page 2 | Page 3 | Page 4
:--------------:|:---------------:|:---------------:|:---------------:
![cv1](https://max.pow.is/assets/img/cv/cv-00.png)| ![cv2](https://max.pow.is/assets/img/cv/cv-01.png)| ![cv3](https://max.pow.is/assets/img/cv/cv-02.png)| ![cv4](https://max.pow.is/assets/img/cv/cv-03.png)

## Developing
<p align="right">(<a href="#readme-top">back to top</a>)</p>

# Built with

### Built With
Built with lualatex due to some known issues with FontAwesome.

Build with lualatex due to some known issues with FontAwesome.
# Getting Started

### Prerequisites
## Prerequisites

Lualatex can be installed easily as part of **[TexLive](https://www.tug.org/texlive/quickinstall.html)**

A package is also available for Windows but I prefer using a **WSL2** which is pretty well integrated with **VSCode**
A package is also available for Windows but I personally prefer using a **WSL2** which is pretty well integrated with **VSCode**.

### Setting up Dev
## Preparatory steps

* *On debian*, the following packages must be installed

Expand All @@ -52,24 +94,83 @@ A package is also available for Windows but I prefer using a **WSL2** which is p
brew install texlive
```

### Building
# Usage

Touch a ´release.dat´ file locally to support embedding versioning of pdf file generation.
## Using Local Environment

Building is just a matter of clicking the build button in VSCode in the VSCode setup.
Building locally is just a matter of clicking the build button in VSCode in the VSCode setup.

Altrernatively, the pdf can be generated using the command-line:

```shell
# Generate the standard pdf
pdflatex cv
# Generate the pdf in dark mode
# Generate the standard pdf with embedded version number/name as clickable url
pdflatex "\def\releasenumber{ga-build}\def\releaseurl{https://example.com}\input{cv}"
# Generate the pdf in dark mode (can be combined with the above)
pdflatex "\def\darkmode{}\input{cv}"
```

Note the github project comes with some nice github actions:
<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Using GitHub Actions

A bunch of github actions were implemented to cover the build, release and deployment processes:

* [![Build (Lualatex)](https://github.com/maxpowis/cv/actions/workflows/build.yml/badge.svg)](https://github.com/maxpowis/cv/actions/workflows/build.yml): builds the cv.tex project with lualatex
* [![Create Release](https://github.com/maxpowis/cv/actions/workflows/release.yml/badge.svg)](https://github.com/maxpowis/cv/actions/workflows/release.yml): build and release to the repo releases
* [![Publish PDF release to website](https://github.com/maxpowis/cv/actions/workflows/deploy.yml/badge.svg)](https://github.com/maxpowis/cv/actions/workflows/deploy.yml): copies the latest pdf release to a github pages site repo
* [![Convert PDF to PNG](https://github.com/maxpowis/cv/actions/workflows/png.yml/badge.svg)](https://github.com/maxpowis/cv/actions/workflows/png.yml): generates thumbnails to be embedded in this README

### Continuous build

This GitHub Actions [![Build (Lualatex)](https://github.com/maxpowis/cv/actions/workflows/build.yml/badge.svg)](https://github.com/maxpowis/cv/actions/workflows/build.yml) workflow automates the process of building the LaTeX-based CV, ensuring stability of the codebase. Triggered by manual or branch events, it fetches the code, compiles the CV, performs linting, and uploads the result, adjusting actions based on success or failure.

```mermaid
graph TD
%% Workflow Title
Build_Lualatex_Workflow[Build - Lualatex Workflow]
%% Nodes
Build_Lualatex_Workflow -->|on| B[on: workflow_dispatch]
Build_Lualatex_Workflow -->|on| C[on: push - master]
Build_Lualatex_Workflow -->|on| D[on: pull_request - master]
B -->|jobs| C1[build_latex - runs-on - ubuntu-latest]
C -->|jobs| C1
D -->|jobs| C1
subgraph C1[build_latex - runs-on - ubuntu-latest]
E[Checkout code]
E -->| | F[Create cv-maxpowis-ga-build.tex]
F -->| | G[Lint LaTeX document]
G -->| | H[Upload TeXtidote report]
H -->| | I[Compile LaTeX document]
I -->|on success| J[Upload pdf]
I -->|on failure| K[Upload logs]
end
```

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- ROADMAP -->
# Roadmap

* [ ] [Expose dark cv as alternate download on personal website](https://github.com/maxpowis/cv/milestone/3)
* [ ] Complete this README with missing GitHub actions lowchards and descriptions

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- LICENSE -->
# License

Based on the [Beerware](https://en.wikipedia.org/wiki/Beerware) license.

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- CONTACT -->
# Contact

Well, you'll find it all in my [cv](https://max.pow.is/cv.)
<p align="right">(<a href="#readme-top">back to top</a>)</p>

0 comments on commit d96c16b

Please sign in to comment.