Skip to content

gpauloski/gpauloski.github.io

Repository files navigation

Personal website for Greg Pauloski

Deploy pre-commit.ci status

Static files and code for generating my personal website at gregpauloski.com. The page design is based on ericwallace.com, and the static site compilation is done in Python using Jinja.

Structure

Directory Description
builder/ Python packages that compiles the static site with Jinja.
config/ Data files for generating various sections of the site.
static/ Static files to include in the site (CSS, files, images).
templates/ HTML Jinja templates compiled to produce final rendered site.

Build Locally

$ virtualenv venv
$ . venv/bin/activate
$ pip install -e .
$ python -m builder --open

The output is written to _site/ by default, and _site/index.html can be opened in your browser to view. The --open flag will automatically open the page after the build completes if your terminal is configured to open links.

The build and content are configured in the config/config.toml file. See python -m builder --help for more details.

Updating

To add a new publication:

  1. Add the bibtex entry to static/publications/publications.html.
  2. Add the PDF to static/publications/.
  3. Create a new JSON file for the publication in config/publications/ and fill out all of the fields.

To add a new presentation:

  1. Add the PDF to static/slides/ or static/posters/.
  2. Create a new JSON file for the presentation in config/presentations/ and fill out all of the fields.

Deploying

The website is built and deployed from HEAD weekly and on each push to main.

Fixing BibTex

The builder package also includes a CLI utility for formatting BibTex files. The formatter will do many things: sort by entry IDs, sort keys within entries, clean up indents, use uniform formatting, fix casing in titles, and more.

The builder package must first be installed in your Python environment if not already.

$ virtualenv venv
$ . venv/bin/activate
$ pip install .

To format:

$ python -m builder.publications --input INPUT_BIB_FILE --output OUTPUT_BIB_FILE

Use python -m builder.publications --help for additional options.