- HTML 89.4%
- CSS 9.8%
- Shell 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| pages | ||
| public | ||
| templates | ||
| .gitignore | ||
| docker-compose.yml | ||
| LICENSE | ||
| make.sh | ||
| README.md | ||
Miloš's Personal Website
After a long dalliance with multiple CMS systems, I've found all of them to be too complicated and with too much technical baggage for my purposes. Inspired by Motherfucking Website and all the gems that followed, I decided to write a few simple scripts and a template system to process my website.
The point of this exerise is to create something dirt simple and fool/future-proof for a relatively static personal website/portfolio. You do not need a whole Wordpress installation for a website like this. Get a cheap domain name and VPS, or just shared hosting, and upload the generated files to have.
How does it work?
Page content written in HTML is processed by a bash script (./make.sh) that concatenates them onto a set of stub templates (header and footer). The result are flat HTML files without tracking or Javascript. They load fast and are dirt simple to backup or edit.
The actual pages are then placed in the ./public folder, from where you can push them onto your server of choice in whatever way you'd like. That folder also contains 1) a stylesheet that defines what the website looks like and 2) an images folder for different assets.
Containerized server for testing
This repository also has a docker container of you can use to spin up a web server on your local machine and test the website, seeing how it looks and works before pushing it onto your public server.
The testing server container is a minimal image of caddy, defined in docker-compose.yml. Start it with docker compose up -d. It will then expose a web server on http://localhost:7654 which you can use to test your website. Stop it with docker compose up -d. The server only exposes files in ./public.
NOTE: You can change the port it exposes by changing the number in line 8 of the docker compose file.
Dependencies
The website scripts and system was designed for Linux, but should work fine in macOS too. If you wish to use the testing server, you must have docker installed, but it is not a requirement for the template.
License, Contributions, and Copyright
Licensed under GNU GPL v3 (or later). See LICENSE for details, and for any distributed version provide corresponding source code under the same terms.
If you modify the build script or processing tooling and share/distribute the result, please also publish the corresponding script source and keep the attribution/credits.
If you find bugs or make improvements, a PR back to the upstream repo is appreciated and welcomed.
Copyright © 2026 Miloš Jovanović