Here we are! This year (2025) of my Master of IT has been crazy. I really wanted to put what I have learned into action.
So I began refactoring my business tools, starting with the Quoting tool. This refactor resulted in a simpler, more maintainable code base with the tool calculating, building and formatting custom quotes 2.5x faster!
I have a bunch more business management and automation tools to refactor, but I think it’s now time to build my blog to talk about why, how and what I am doing. How meta.
Problems
- I need to dynamically load the title and links to all of my blogs and display the blogs nicely in responsive layout.
- I need to display the selected blog with nice and responsive styling.
I found this epic blog which helped a lot! Build a SvelteKit Markdown Blog
Solving Problems
First I need to figure out where everything is stored and handled.
Blog md files will be stored in src/blogs
Everything is going to be OOP!
To manage blogs dynamically I will use Sveltekit parameter routing using [slug]. All blogs will be stored in a content directory as markdown files. MDSveX will be used so I can take full advantage of svelte inside markdown files!
A list of markdown files will be imported dynamically, populating a list of blog titles with link id’s.
I will need a way to manage meta data and toggle the published state of a blog. To do this I will encapsulate the metadata within --- tags at the top of md files. The meta data I have landed on is title, description, date, published, categories, and an optional github tag. I have also added the layout, but we’ll see if this is needed when we move to styling.
^^ A note, consider adding an “edited” to this. Or maybe something that that so the creation and edited date can be used differently
Design System
To more easily manage design I have created a Design System page. I stumbled across this blog by the great Maxime Heckel. Maxime Heckel’s Design System Implementing my own made the design so much easier to adjust in context with other elements. This page would represent the atomic and molecule building blocks described in the book xxx by xxx.
I have chosen to avoid implementing a component library to further refine my skills. I will look into implementing animation libraries like GSAP.