07-11-2024

G'day – Kicking Off My Build-In-Public Journey

FAST Stack AI Build in Public

Tech Stack


Welcome to My New Blog!

Howdy and welcome to the first post on my new site! This is where I’ll document my journey of experimenting with tech, growing indie projects, and balancing consulting work—whilst building in public. It's all powered by a mighty minimal stack I've coined the FAST Stack, inspired by indie pioneers like Pieter Levels and Marc Louvion.

Project Overview

Why this new website? Well all designers renew their site every year or so However I’ve spent years juggling multiple domains, stuck in the loop of debating tech stacks, playing with UI systems, and imagining apps I could build. Now, I’m committing to actually shipping. With this single site & The FAST Stack—Flask, Alpine.js, SQLite, and Tailwind—I am aiming to set myself up in 2025 for a no-BS approach to launch projects quickly, optimise workflows, and create a single hub for everything I do: from consulting to indie hacking + hobbies and interests.

The FAST Tech Stack

Here’s what makes this setup work fro me right now (and why I’m loving using it):


  • Flask: This lightweight Python framework lets me get web apps running fast. It’s simple, flexible, and plays well with the AI-powered IDEs I’m using, like Cursor.

  • Alpine.js: A minimal JavaScript framework for the few interactive elements I need. It’s perfect for keeping things lightweight while adding just enough dynamism.

  • SQLite: An ultra-simple database that works out of the box, keeping setup effortless and scaling when needed. Great for MVPs or personal projects.

  • Tailwind CSS + DaisyUI: A match made in heaven for rapid, clean UI design. Tailwind lets me style directly in the markup, while DaisyUI gives me a head start with pre-designed components.

AI-Assisted Development

I'm also leveraging Cursor, an AI-augmented IDE, to boost productivity. I love cursor becasue it let's you bring in all your settings direct from Visual Studio Code and becomes a developer assistant to bounce ideas off. This lets me work smarter, not harderand writing Python with the help of AI means I can refactor, debug, and brainstorm faster—something that fits perfectly into the "ship fast, iterate faster" philosophy I’m aiming for.

Troubleshooting and Lessons Learned

There has been minimal hindrances so far but a couple quick things:


  1. Markdown Metadata Parsing: Early on, I struggled to extract metadata from Markdown files cleanly. Writing a custom strip_metadata function solved the problem, allowing me to validate and render content smoothly.

  2. HTML Sanitization: Security is non-negotiable. Using the Bleach library, I set up a whitelist-based HTML sanitization to prevent XSS attacks, making sure any content added is safe.

  3. Dynamic Content Loading: Loading and rendering Markdown dynamically required some tinkering. The markdown_to_html function does the trick, wrapping content in a styled, cohesive layout.

  4. Styling and Theming: Tailwind CSS and DaisyUI simplified the UI design process. Extending Tailwind with custom fonts and colors gave the site a unique look without endless hours of fiddling.

What's Next?

As I continue to trial and grow the FAST Stack, I’ll be sharing everything I learn—what works, what doesn’t, and how I’m evolving my projects. Whether you’re here for tech insights, indie hacking experiments, or to watch me juggle consulting work, I’m excited to have you along for the ride.


Stay tuned, and let’s see what we can build when we focus less on perfection and more on shipping fast!