Welcome to my blog, where I share my passion for technology and software development. With a background in software engineering and a keen interest in cloud-native development, I enjoy exploring how modern tools can solve real-world problems.
May 01, 2025
Function Calling in Google Gemma3
Understanding Function Calling in Google Gemma3
Explore how Gemma3's function calling feature, powered by Python, enables developers to create interactive AI applications that go beyond text generation
Read More..
Leveraging Full Text Search and Trigram Tokenization for Efficient Name Matching
This article explains how to use SQLite's FTS5 module with the trigram tokenizer to perform efficient full-text searches, particularly for matching similar names in a large database. It covers setting up the virtual table, normalizing names, bulk inserting data, and executing searches that handle close but not exact matches
Read More..
Using AI to Extract Structured Data from Web Pages: A Kenyan Invoice Verification Case Study
This article demonstrates how to leverage Google Gemini AI to extract structured JSON data from a web page. It includes a detailed guide with code examples for defining data structures, and implementing a parsing function
Read More..
A Step-by-Step Guide to Mapping Your Domain to Cloud Run
Learn how to connect your custom domain to Google Cloud Run in just a few simple steps, making your website look professional without breaking the bank.
Read More..
Discover how adding your deploy URL in Reflex automatically generates robots.txt and sitemap.xml for easier SEO.
Reflex simplifies SEO by automatically generating robots.txt and sitemap.xml files when you include the deploy_url in your application's configuration.
Read More..
March 28, 2025
Deploying Reflex Front-End with Caddy in Docker
A step-by-step guide to building and serving Reflex static front-end files using Caddy in a Docker container
This blog post explains how to use Reflex to generate static front-end files and serve them using Caddy in a Docker container. It covers the Dockerfile setup, and Caddy configuration.
Read More..
March 27, 2025
Optimizing Reflex Performance on Google Cloud Run
A Comparison of Gunicorn, Uvicorn, and Granian for Running Reflex Apps
In this article, I tested various methods to run a Reflex 0.7.4 app on Google Cloud. After experimenting with Gunicorn, Uvicorn, Granian, and Reflex's built-in command, I found that Gunicorn with Uvicorn workers delivered the best performance.
Read More..
February 4, 2025
Adding middleware to FastAPI Applications: Process Time Headers, Security, and Compression
A practical guide to implementing middleware in FastAPI for better performance, security, and efficiency.
In this article, we'll explore how to add middleware to a FastAPI application. We'll go through three examples: adding a process time header to track how long requests take, setting up security headers to keep your app safe, and using GzipMiddleware to compress responses for faster delivery.
Read More..
January 27, 2025
Adding Google Authentication to Your FastAPI Application
A guide to adding Google Authentication to your FastAPI app.
Learn how to add Google Authentication to your FastAPI app, making it easier to use and more secure.
Read More..
Push code, deploy automatically: A simple CI/CD guide for your web app.
Learn how to connect GitHub, Google Cloud Build, and Google Cloud Run to automatically build and deploy your FastAPI application every time you push code changes.
Read More..
Have a project in mind? Send me an email at hello@davidmuraya.com and let's bring your ideas to life. I am always available for exciting discussions.