/website-11

My personal website/blog publish tools and content.

Primary LanguagePHPGNU General Public License v3.0GPL-3.0

JoaoCostaIFG website

The source files of my blog/personal webstie.

Contents of this repository

This repository includes all (currently published) content of my personal website/blog and the tools I use to write and publish it (including a DokuWiki instance).

The tools I use to publish

The site's back-end is written in PHP. I use some PHP libraries:

  • Parsedown - This is used to render the markdown content of the blog posts and projects description.
  • Symfony routing component - This is used for routing and rich URLs. Symfony's yaml, config, and http-foundation components are also used for this end.

Front-end dependencies:

  • Skeleton CSS - This is used as the basis of the site's CSS.
  • Prism.js - This is used for code blocks syntax highlighting (Okaidia theme).
  • Remark - This is used for the workshop's slideshow presentations.

The website is deployed using a Docker container based on an Alpine Linux image. Three processes run on this container: nginx (HTTP server), php-fpm (use PHP on nginx), and tor (Onion service for the website).
In order to have these two processes run in the manner I want, I use s6-overlay (init scripts and process supervisor).

The website uses a SQLite database.

SSL certificates

The SSL certificates are issued by Let's Encrypt.

I used to use certbot to issue/renew certificates, but it had poor integration with my DNS provider, so I started using acme.sh. This way, I can renew my certificates automatically by using my DNS provider's API.

Cool resources

TODO

License

Unless stated otherwise, all blog content in this page is licensed under a Attribution-ShareAlike 4.0 International and the code is licensed under the GPL3 License (see LICENSE file).