Part 3 of our OnTheGoRentals dev diary. We cover MinIO object storage, the Prometheus + Grafana + Loki observability stack, Docker deployment, and technical debt.
OnTheGoRentals Part 2: Concurrency & Security — Building a Production-Ready Rental SaaS
Part 2 of our OnTheGoRentals dev diary. We tackle the hardest problem in rental systems: preventing double-bookings with JPQL interval queries, and building a secure JWT authentication architecture.
OnTheGoRentals Part 1: Architecture & Domain Design — Building a Production-Ready Rental SaaS
Part 1 of our OnTheGoRentals dev diary. We break down the modular monolithic architecture, the domain model with immutable entities, and why we chose Builder patterns over mutable state.
OnTheGoRentals: A Dev Diary — Building a Production-Ready Rental SaaS
OnTheGoRentals is a production-ready rental SaaS platform built with Spring Boot and Vue 3. It’s live, fully functional, and designed to be adapted for any rental domain — cars, bicycles, houses, equipment. This 3-part series walks through the technical decisions behind the platform.
Vue 3 Composition API: Real-World Patterns from Production Apps
The Composition API is not just a syntax change — it is a paradigm shift. After building three production applications with it, we have developed patterns that make Vue 3 codebases more maintainable, more testable, and more enjoyable to work on. Published: July 7, 2026 Tech Stack: Vue 3 Pinia TypeScript Vite TL;DR The Composition […]
Self-Hosted TTS with Kokoro ONNX: What CPU-Only Inference Actually Gets You
Building a smart-home TTS stack on hardware you already own — no GPU, no cloud API, no bill. We wanted text-to-speech for automation triggers that runs locally, on existing CPU hardware, without sending every doorbell announcement through a third-party API. So we built a FastAPI service around Kokoro ONNX with voice blending, dialogue scripting, and […]
Building Since: A Self-Hosted Claim Tracker with PocketBase, React, and Express
Every prediction someone makes online deserves accountability. We built Since — a self-hosted temporal claim tracker — to register predictions, record past events, attach evidence, open disputes, and verify outcomes over time. The stack is deliberately lightweight: React 19, PocketBase, Express.js, and Docker. Here’s why we chose each piece, what surprised us, and what we’d […]
Agent Harness Explained: The Runtime That Makes AI Agents Actually Work
Every agent architecture article talks about LLMs, tools, and skills. Nobody talks about the thing that actually makes them work: the harness. It’s the runtime that takes your prompt, decides what tools to call, manages context, handles errors, and returns a result. Without it, you have components. With it, you have an agent. This is […]
Agent Skills Explained: How AI Agents Learn to Do Real Work
Most AI agents today are still just chatbots with a tool call bolted on. They can chat, but they can’t reliably do specialised work. The ones that ship real value — document editing, brand compliance, data analysis, deployment — have something the others don’t: Skills. Agent Skills are an open standard from Anthropic for packaging […]
MCP Explained: The Open Standard That Makes AI Agents Actually Useful
AI models are powerful, but they’re stuck in a box. They can reason about text, generate code, analyse data — but they can’t click buttons, query databases, or publish content without help. Every team solving this problem was building the same integration over and over: custom glue code, per-model adapters, brittle workflows. Model Context Protocol […]