# The Website

So there's someone interested in how this thing works, great!

I'll start with the why: **Why build it from scratch?** For fun, primarily. I like 
having a personal thing to tinker with, and I believe in building simple tools over
using complex solutions. The right tool for the right job.

## Simplicity

I try to keep this website simple, as a person focused primarily on 
functionality of things. However, I do keep some principles in its 
design, as well:

- Usability
- Compatibility
- No overdesigning
- No tracking spyware

## Tech

Now we've gotten the aims out of the way, what's the functionality?

![Flask logo](https://flask.palletsprojects.com/en/stable/_images/flask-horizontal.png)

Majority of the text is written in Markdown (as I prefer to reuse it). I 
use [markdown2](https://github.com/trentm/python-markdown2) as a parser which
turns it into HTML. That HTML is then served via 
[Flask and Jinja](https://palletsprojects.com/p/flask/). Using these light
modules lets me customize whatever I need, wherever I need it.

I've mulled on creating and hosting it entirely statically but I've enjoyed the benefits
of having an actual server run some code, therefore Flask. 

As I've mentioned most of the website is in markdown, but where I do need
to get involved I just edit the templates or add custom files/implementations.

I've also integrated some analytics from 
[Goat Counter](https://github.com/zgoat/goatcounter) as free and open analytics.
They help me count traffic and see usage, but are completely impersonal and as
such privacy friendly. In case JS/domain is blocked, there's no circumvention
via pixels, middleware, or fingerprinting - I respect the choice.

It boils down to a mainly html (so blazing fast) website, customized through a
reusable language. It's fun to edit and no hassle to upkeep. :)

I intend to put the website's repo public soon, after I clean up the deployment
and get rid of artifacts. When I do, I'll gladly share it here.
