Passionate Android engineer and curious tinkerer. 🇨🇦🍁📱🏞️🍔📸🏖️🎧
I replaced default Kotlin highlighting on my Zensical site with Shiki for cleaner tokens, better modern syntax support, and smooth light/dark theming.
A source code syntax highlighting library for Jetpack compose that leverages existing Highlight.js in a hidden WebView and converts the output to native AnnotatedString for real text selection and acc…
How I explored Shiki-quality syntax highlighting in Jetpack Compose - server-driven via Cloudflare Workers and on-device via TextMate grammars, no WebView needed.
How I added an AI post summarizer and Q&A assistant to my blog using Cloudflare Workers AI - and used AI Gateway to keep it mostly free.
An adventure to setup my own blogging site using Astro and Cloudflare Workers.
List of essential macOS apps I use in 2026 for productivity and development.
GitHub’s Spark is a fantastic starting point for building modern React applications that use spark-template as a starting point. Once you…
If GitHub coding agent is having an issue downloading artifacts from a different URL, consider adding them to the allow list to fix those issues.
Exploring the limits of AI-assisted development through a bold experiment: build a JSON5 lib in Kotlin by blindly trusting AI-generated…
Assisted coding is very promising and fun! Fully autonomous app building might not be too far away! 🤓
Have you ever needed to save your Android Logcat logs for later analysis? You can achieve this using Timber and a service that has REST API
ℹ️ This is part of the self-learning log as I explore Docker and Portainer.
How to create data source to connect to PostgreSQL database and work with SQLDelight 2.0
Use Kotlin’s standard function `runCatching` API to handle errors from standard or coroutines functions.
Trick on how to create Android custom indeterminate progress bar behaviour using ImageView and Animated Vector Drawable
Tips on how to take full control and create your own custom-view to add syntax highlighting support in your Android app.
Medium has launched a sister site called MOMENTUM that is in dark mode. Here I talk about how you can possibly have dark-mode now.
A quick guide on how to set up GitHub Actions CI workflow to automatically post APK to Firebase App Distribution from your Android project.
A short article showcasing how to build Muzei Live Wallpaper plugin for Android using two simple steps.
On April 14th, 2020 GitHub announced a major change in their plans to allow free private repositories. It’s a good time to make use of…
Article contains list of Android Open-Source apps that are fully featured and ideal for learning different techniques.
Recently I have had to create UI that required user tappable/clickable text in the same text view. I know this is kind of unusual as the…
In the past few years, the Android ecosystem has exploded with lots of tools, libraries, and architecture guidelines. Recently, with I/O…
Recently I had to prepare a complete mocked server for an app I worked in the past. The reason mocking was required so that app’s…
Recently I decided to host my personal portfolio site using GitHub pages. Even though they have very detailed instruction on how to setup a…
Disclaimer: This is my personal experience with the device. The opinions expressed in this article are mine only. I am not affiliated with…
What is the most expensive lie that you are aware of?
I’ve been following Kotlin for a while, and after Google I/O 17 announcement it became the officially supported language for Android.
Recently I have been working with swagger in a project. Swagger 2.0 has become an open standard and now referred to as OpenAPI Specification…
During development I have come across some apps which are very helpful and worth sharing with the community.