Web & App Development Blog
Exhibition Stand Technology: What Actually Works
Planning exhibition stand technology? A practical guide to LED screens, video, AR and interactive elements, what each does and how to combine them.
Off-the-Shelf LMS vs Bespoke E-Learning Platform: Which Should You Choose?
Off-the-shelf LMS like Moodle, or a bespoke e-learning platform? An honest breakdown of the trade-offs and how to tell which your organisation needs.
How to Configure robots.txt for AI Crawlers in 2026 (GPTBot, PerplexityBot, ClaudeBot)
How to configure robots.txt for AI crawlers in 2026: the difference between training bots and citation bots, and how to allow one without the other.
How Much Does It Cost to Build a Web AR Experience in 2026?
What WebAR really costs in 2026, from simple 3D product viewers to full AR campaigns, and why browser-based AR is far cheaper than a native AR app.
8th Wall Is Now Open Source: What This Means for Web AR in 2026
8th Wall's WebAR engine is now free and open source. What changed, what's included, and why now is the best time to build augmented reality for the web.
Laravel vs Node.js in 2026: Which Should You Choose for Your Project?
Laravel vs Node.js in 2026: a practical comparison of performance, developer experience and use cases from a developer who ships both in production.
How Much Does It Cost to Build an App in the UK in 2026?
What does it cost to build an app in the UK in 2026? Realistic prices for MVPs, mid-range apps and complex builds, from a developer who builds them.
Creating an optimised GitLab pipeline for eslint tests
How I created an optimised GitLab pipeline for ESLint tests, using the Dependency Proxy to cache Docker images and caching node_modules between runs.
Creating an NPM package with TypeScript
How I created and published an npm package with TypeScript and TSDX: a small scroll animation library built on the Intersection Observer API.
Three.js TypeScript Webpack Starter
A starter project for using Three.js, TypeScript, SCSS and Webpack 5, with hot module replacement and autoprefixing. Clone it and run npm run dev.
React TypeScript Webpack 5 Starter
A new update has been pushed to my React, TypeScript and Webpack starter. It now uses Webpack 5 under the hood, aswell as including SCSS support.
SCSS Allman Formatter
Why I made a VSCode extension to format SCSS & CSS with the Allman brace style, and where to get the SCSS formatter from the marketplace or GitHub.
Backup a Docker MySQL database with CRON
A simple bash script and cron job for automated MySQL database backups from a Docker container, using mysqldump and timestamped gzip files.
Backup a MySQL database from within a Docker container
A single docker exec and mysqldump command to backup a MySQL database from within a Docker container to a .sql file on your host machine.
Laravel Docker image
A Laravel Docker image for running Laravel applications with docker-compose, with separate development and production setups. Clone it from GitHub.