Welcome to my blog

There are a myriad of CMS software out in the wild. But being a software developer myself, I didn't want to use any of them - so I created my own. This blog software is based on earlier discoveries, and is also using my toolbox library in its admin pages. You are welcome to check it out. All my software is open source and in github. If you find that my software contributes to anything good, please consider giving the repo a star. If you find that you are using my software and want to prioritize development of your ideas in my software, please consider supporting my work.

Why build my own?

I know what you're thinking — why not just use WordPress, Ghost, or any of the other established platforms? The honest answer is that I wanted full control. I wanted to understand every line of code that serves these pages. I wanted to choose my own stack, my own deployment model, and my own data format. No database servers, no PHP runtimes, no plugin ecosystems to maintain.

The result is a static Angular application with server-side rendering, hosted on GitHub Pages. Articles are stored as JSON, the admin editor uses a WYSIWYG markdown editor, and the whole thing builds down to a set of static files. It's simple, fast, and costs nothing to run.

The stack

For those curious about the technical details:

  • Angular 21 with standalone components and signal-based state management

  • Nx monorepo for project organization and build tooling

  • Static SSR via @angular/ssr for pre-rendered pages

  • GitHub Pages for hosting — zero infrastructure to manage

  • Markdown for article content, rendered at runtime with Marked

  • @toolbox-web/grid for the admin data grid

Every piece was chosen deliberately. No framework bloat, no unnecessary dependencies. Just what's needed and nothing more.

From graphics to code

I've always found software development fascinating. I come from a background in graphics and art, and software engineering is kind of like a canvas that needs to be filled with content. My canvas is code and I love seeing how a blank code file can be turned into something beautiful and also useful for many others than just myself. It is the utmost form of practical art.

That background in visual design shapes how I approach code. I care deeply about structure, rhythm, and clarity — not just whether the code works, but whether it reads well and feels intentional. I always try to make my code both minimalistic and performant. Every abstraction should earn its place.

What to expect

This blog will be filled with my thoughts on code and development in general, discoveries I've made and notes I've taken along the way. Topics you can expect to see:

  • Frontend architecture — patterns and practices for building maintainable Angular applications

  • Web components — building framework-agnostic UI libraries that work everywhere

  • Performance — techniques for making web applications fast without sacrificing developer experience

  • Open source — lessons from maintaining and publishing packages on npm

  • Full-stack experiments — like running Angular SSR and NestJS on a single Express instance

I write about things I've actually built and problems I've actually solved. No theoretical fluff — just real-world experience distilled into something hopefully useful.

Follow along

I hope one day to make something groundbreakingly good. You are welcome to follow along if you'd like. If you have questions, suggestions, or just want to say hello, feel free to leave a comment below — they're powered by GitHub Discussions, so you can use your existing GitHub account.