jdeko.me
jdeko.me/bball
jdeko.me source code
jdetok on github
linkedin

about jdeko.me

created & maintained by Justin DeKock
/-|-\

hardware --

every aspect of this website (with the exception of SSL) is being served to your browser from this raspberry pi in my home office!

jdeko.me is entirely self-hosted - the single exception being SSL encryption/certification, which is provided via Cloudflare. i value my network security enough to not delve into that until i have taken more time to learn the process
/-|-\
this raspberry pi 5 single-board-computer has a 4-core CPU & 16GB of RAM - more than enough to handle far more traffic than this site will receive Go API, Apache web-server, & mariadb database server without issue

-- software --

docker

each software element that supports this website has been containerized via Docker, allowing them to all run independently on the same host machine. docker networks provide an additional level of isolation, enabling me to host apache web-server & mariadb database on separate networks. i used dockerfile to create custom docker images and docker compose to enable starting & stopping entire replicable environments with a single command

go programming langauge

every HTTPS request to jdeko.me is routed and handled through an API that i wrote in Go. this API is connected to the same backend docker network as my mariadb database, and serves all interaction with my jdeko.me/bball
api source code (go)

mariadb database

mariadb is the database server that powers my jdeko.me/bball. mariadb is a fork of mysql, with nearly identical syntax. new stats are inserted into this database nightly with the execution of a python script. a daily cronjob runs a shell script that runs my docker compose file, which then runs the python script in an isolated environment.

javascript

javascript powers the frontend of my jdeko.me/bball. all interactions with any of the buttons/selectors/text-boxes on this page are handled with javascript event handlers that call endpoints from my API
javascript source code

html/css

all visual elements of this website are written in pure html & css. i've always preferred clean and to-the-point websites, and i miss the more simplistic look of the internet of my youth

apache web server

a containerized apache web server is used as a reverse-proxy to provide another security layer from the external internet. this web server declines any invalid requests, forwards any HTTP requests to HTTPS, & then forwards any valid HTTPS requests to my API