AI models are powerful, but they’re stuck in a box. They can reason about text, generate code, and analyse data — but they can’t click buttons, query databases, or publish content without help. MCP (Model Context Protocol) is the open standard that lets AI agents break out of that box and interact with the real […]
MCP Integration for WordPress Automation: Cutting Publishing Time by 80%
Every content team knows the routine: write the post, copy-paste it into WordPress, add categories, set the featured image, configure the excerpt, preview, publish, share on socials. It’s a 15-minute ritual repeated 5-10 times per day. We automated the entire publishing workflow using MCP — and cut that time to under 2 minutes per post. […]
Vue 3 vs React for Enterprise SaaS
The framework debate that actually matters when you’re building for production. An honest comparison of Vue 3 and React for enterprise SaaS.
TorqueBooks: Building a Workshop Management System for South African Auto Shops
How we built TorqueBooks — a multi-tenant workshop management system using PocketBase, React, and Keycloak. Real war stories from 8 weeks of development.
Build Once, Deploy Anywhere: Runtime Env Injection for Dockerized Frontends
Stop rebuilding Docker images for every environment. Here’s how we inject runtime config into Vue.js and React apps at container startup — one image, any environment.
Self-Hosted CI/CD on a Home Rack: GitHub, Gitea, Woodpecker, and Portainer
Depending on your team size and build volume, you could be spending anywhere from a few hundred to several thousand rand per month on cloud CI/CD services — from our experience working with South African SaaS teams. Your code lives on GitHub, but your infrastructure sits in a rack at home. Here’s how we built […]
Self-Hosted AI vs Cloud APIs: What South African Businesses Need to Know
Comparing self-hosted AI to cloud APIs for South African businesses. Real cost analysis with 2026 pricing, infrastructure requirements, POPIA compliance, and when each approach makes sense.
From Rebuilding Authentication in Every App to a Shared Identity Layer
Stop rebuilding authentication in every app. Learn how to build a shared identity layer that handles OAuth, federation, and user management once — so every application in your ecosystem can inherit it. Covers email normalization, token boundaries, and the critical difference between authentication and authorization.
Bringing GPU Support to NeuTTS-Air — A Dev Diary
Bringing GPU Support to NeuTTS-Air — A Dev Diary This is the long one: the full post‑mortem, the war stories, the trade‑offs, the CLI commands, and the benchmarks. Read this if you want to know what actually happened when we added ONNX GPU support and a benchmarking suite to NeuTTS‑Air. TL;DR We added auto device […]
VoxNemesis Supertonic: Building a Local-First, GPU-Aware TTS Browser Extension
The Build Log: Wrestling Chrome into a Local-First TTS Engine (v0.2.0) Version 0.2.0 is live. But a changelog doesn’t tell you the pain it took to get here. This is the story of how we fought Manifest V3, race conditions, and GPU drivers to build a local-first TTS extension that actually works. When we started […]