The Protocol Behind Bluesky: Rethinking Social Media Architecture

15th February 2026

Explore the AT Protocol powering Bluesky - a decentralised social networking protocol that gives users real ownership over their data and identity. Learn how it works, how it differs from blockchain and Mastodon, and build a simple OAuth app against it.

Automating My Blog Workflow with GitHub Copilot SDK

8th February 2026

I built a TypeScript script using the GitHub Copilot SDK to automate my blog's publishing workflow. Here's how it converts Markdown drafts into fully structured blog posts with proper frontmatter, SEO metadata, image handling, and more.

Understanding Modern RPC Frameworks: How They Work and When to Use Them

18th January 2026

Explore modern RPC frameworks and learn how they differ from REST. This comprehensive guide covers plain RPC, JSON-RPC, gRPC, tRPC, and oRPC with practical examples. Discover when to use RPC over REST, understand end-to-end type safety, and see how modern tools like tRPC and oRPC simplify full-stack TypeScript development while gRPC excels in microservices architecture.

Making a Face Follow Your Cursor with AI‑Generated Images

20th December 2025

Learn how to create an interactive face-tracking effect using AI-generated images. This tutorial covers generating face variations with the fofr/expression-editor model on Replicate, building a Node.js script to automate image generation, and implementing smooth cursor and device motion tracking in the browser using vanilla HTML, CSS, and JavaScript.

Turning Markdown into Podcasts with OpenAI Agents

13th November 2025

Transform your Markdown blog posts into engaging, conversational podcasts using OpenAI’s Agents SDK. Discover how to automate every step - from scriptwriting and editing to voice generation - to produce natural-sounding MP3 episodes in minutes. Build your own AI-powered production pipeline and give your blog a real voice, no studio or audio expertise required.

How to Structure a Nest.js Project for Microservices (Monorepo Setup)

12th October 2025

A clean and scalable way to structure your Nest.js project for microservices. This step-by-step guide helps you organise multiple apps and shared libraries for a scalable architecture. Perfect for developers who want a maintainable, modular, and production-ready backend foundation with Nest.js.

Decoupling a System with Nest.js Microservices

11th October 2025

Turn your Nest.js app into a distributed microservice system. Discover how message queues and shared libraries help create a loosely coupled backend. Each service handles its own responsibility, from order creation to persistence and notifications, without waiting on others. This approach makes your backend more resilient, fault-tolerant, and ready for real-world workloads.

Building an AI Search Engine with Next.js and Free Open-Source LLMs

5th April 2025

Build your own AI search engine with Next.js, SQLite, and free open-source LLMs. This tutorial guides you through implementing Retrieval-Augmented Generation (RAG) for accurate, context-aware search, bypassing costly APIs. Discover how to leverage local models and vector databases for powerful, privacy-focused search results.

Create a Recommendation Engine with AI for Free

24th March 2025

Learn how to build a free AI-powered recommendation engine using open-source embedding models from Hugging Face and Transformer.js. This step-by-step guide will show you how to generate text embeddings, compare article similarities, and create personalised content suggestions—without relying on paid APIs.

Nest.js class-validator high vulnerability fix

14th Oct 2022

If you have used Nest.js recently probably have realised that the class-validator library has a high vulnerability in it, which is not being addressed for quite a while. The ValidationPipe makes use of the powerful class-validator package and its declarative validation decorators. The ValidationPipe provides a convenient approach to enforce validation rules for all incoming client payloads, where the specific rules are declared with simple annotations in local class/DTO declarations in each module. The class-validator package works in conjunction with another package class-transformer. The lack of maintenance made the Nuxt team fork the original packages and take care of the maintenance.