My personal portfolio.
c
  • C 99.4%
  • HTML 0.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-02 20:22:49 -06:00
conf Update letsencrypt instructions. 2026-09-02 04:41:53 -06:00
includes Add md4c dependency. 2026-07-22 04:52:49 -06:00
posts Improve landing page. 2026-09-02 10:17:01 -06:00
src Add md4c dependency. 2026-07-22 04:52:49 -06:00
static Improve landing page. 2026-09-02 10:17:01 -06:00
.gitignore Render blog posts correctly. 2026-07-22 17:16:57 -06:00
index.html Add notebook project to the hosted section. 2026-09-02 20:22:49 -06:00
main.c Add back WorkingDirectory. 2026-09-02 04:20:26 -06:00
Makefile Update with NGINX reverse proxy. 2026-09-02 03:13:35 -06:00
README.md Update letsencrypt instructions. 2026-09-02 04:41:53 -06:00
robots.txt Add a robots.txt file. 2026-07-29 02:20:47 -06:00

Portfolio

My personal website.

Installation

Webserver

The webserver is powered by mongoose. Clone this repository and build the server binary. Also link /var/www to:

$ make
$ mkdir -p /var/www
$ ln -s $PWD /var/www/portfolio

Copy the systemd unit file into the correct location and enable the service:

$ cp $PWD/conf/portfolio.service /etc/systemd/system/portfolio.service
$ systemctl daemon-reload
$ systemctl enable portfolio.service
$ systemctl start portfolio.service

Forgejo

Follow instructions here. Forgejo should be running as a systemd service on port 3000 once finished.

NGINX

We use Let's Encrypt to get TLS certificates. Run the following on the host:

$ certbot certonly --standalone -d jrpotter.com -d www.jrpotter.com -d git.jrpotter.com

It is assumed that the resulting certificate and key are located at:

  • /etc/letsencrypt/live/jrpotter.com/fullchain.pem
  • /etc/letsencrypt/live/jrpotter.com/privkey.key

Copy the systemd unit file into the correct location and enable the service:

$ cp $PWD/conf/nginx.service /etc/systemd/system/nginx.service
$ systemctl daemon-reload
$ systemctl enable nginx.service
$ systemctl start nginx.service