About This Site

This site began as a NAS-hosted experiment and evolved into a deliberately designed, self-managed system. After a hardware failure exposed tight coupling between storage and hosting, I rebuilt the architecture with clearer boundaries, a cleaner workflow, and a more maintainable frontend structure. The result is a lightweight, static-first environment that I understand end to end.

Hosting

The site runs on a dedicated Raspberry Pi 4 with a minimal Linux installation. The OS boots from microSD, while the web root and all site assets are mounted to SSD storage under a structured directory. This separates system files from application content and reduces infrastructure coupling.

Stack

Python 3.x with Flask and Jinja2 for server-side rendering, deployed on a Linux host behind Nginx. Frontend uses semantic HTML, modular CSS, and minimal JavaScript. No frontend frameworks, build systems, or bundlers. The stack is intentionally lightweight and avoids unnecessary framework overhead.

Workflow

Development happens locally. Changes are versioned cleanly and pushed to the Pi for production. Production remains isolated from experimentation, enabling controlled iteration, cleaner file management, and straightforward rollback when needed.

Maintenance

To update projects or publications, I edit the corresponding JSON files in the directory. The site reloads content automatically with no rebuild needed.