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.
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. |
$ 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.
To add a new publication:
- Add the bibtex entry to
static/publications/publications.html
. - Add the PDF to
static/publications/
. - Create a new JSON file for the publication in
config/publications/
and fill out all of the fields.
To add a new presentation:
- Add the PDF to
static/slides/
orstatic/posters/
. - Create a new JSON file for the presentation in
config/presentations/
and fill out all of the fields.
The website is built and deployed from HEAD weekly and on each push to main
.
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.