Jacob Padgett

So, this site is just a personal lab area where I experiment with various things and show off a bit of my skills. It's nothing really fancy, but let's get into it...

The Engine/Content

The main structure of this site and most of its content pages are built out using a single PHP routing file. I have some include files for a few of the section blocks (header scripts, head block, nav, footer block, etc). I use a MySQL (okay, MariaDB) database to store the content, and pull the content using two super simple OOP classes, one that establishes a MySQLi connection and handles the querying of the database tables, and one that handles content management (loading content, mixing in site options, building out nav options, checking to make sure the page requested exists, etc).

Right now, there is no administrative backend to the site, I do my editing directly in the database. I've built out an admin section in the past, and I might do it again if time allows and I get bored enough, but since this is more of a conceptual site and not for mass consumption, I don't really need a backend at the moment. And honestly, if I did need one, I'd probably use WordPress.

Layout/Design

I use a combination of Bootstrap 5, jQuery 3.6, and custom CSS to handle styling and formatting. I use the Bootstrap because I'm primarily a backend developer, so I don't get to play with CSS nearly as much as I used to in the past. I also will admit I don't have the best eye for design, so I try to keep things simple in that regard.

The Hosting

We should also probably talk about the server. This site (and a couple other sites) are run on a small Ubuntu 18.04 LTS VPS. I administer the server and configured the AMP stack myself from the ground up using open source tools (I use Webmin for a lot of the configuration tasks). I'm currently hosting the VPS through Hostwinds.

Because I don't much care for the hassle, I recently outsourced the e-mail for most of the sites on this server to Google Workspace, although I still manage the e-mail for one domain on this host.