I try to write at least once a month. What I write can vary but typically related to whatever I've been hacking on, experimenting with, or just enjoying in my spare time.

Most of my posts aim at being documentation for myself so I can remember how I did something before. Because they serve this purpose, the posts aren't full of foo, bar, baz type examples. Typically a runnable code snippets or repo links will be provided.

Down below are a few posts, but you can search down below if you can't find what you're looking for.

You can send a tweet at me or use my contact form if you need help, want to get in touch, or just want to say how awesome I am. I won't stop you 😉.

I also have all the gear I use on my /uses page, if you'd like to check that out.

Thanks for reading!

September 2020

Building a Formula 1 Dashboard with iOS 14 Widgets

September 21, 2020

iOS 14 introduce a breakthrough new feature called widgets. Never has the world seen such innovation in mobile phone operating system features. Um, well okay yeah not really, but hey we got this feature so why not use it. Here is how I built myself a little dashboard for all my Formula 1 wants, and how you can do it too!


Formula 1


My First Machine, Getting Started with XState and Angular

September 11, 2020

I have long been interested in XState, a JavaScript state machines and statecharts library. Up until this point I've not found a reason to use a state management library, but XState has really piqued my interest.



Building a Music Link Sharer with Cloudflare Workers

September 7, 2020

Look into how I built my own music link sharer service, all on the network edge. ⚡




April 2020

Blur Up/Fade In Images Without Gatsby

April 27, 2020

Blurring up images is the act of creating a small image and inlining into a page's markup. The inline-image is stretched out to the original image size and a blur is applied. In the background, the full-sized image downloads and replaces the small blurry image. Since the small image is the same size, the page doesn't jump up or down when adding the image. Here is my implementation for a scully plugin, along with how to do it outside of a framework if desired.




February 2020

Moving From Gatsby to Scully (The Angular Static Site Generator)

February 16, 2020

When originally building this site, I used Gatsby. But with the release of Scully, I jumped ship so I can use my favorite web framework, Angular instead of React.




Static Site Generator

Scully Plugins for Algolia Search and HTML Header Tag Links and More!

February 16, 2020

While converting this blog over to Scully, I ended up writing plugins for updating an Algoia index and providing links to header locations, and a some other helpful ones. Check them all out here!





November 2019

Mapbox,, and Angular for Realtime Data Visualization

November 10, 2019

Recently, I was inspired by Jeff from with his video over data visualization using and google maps. I wanted to tinker with using a framework (angular) and Mapbox to make a realtime data visualization.



Data Science

October 2019

How To Make A Custom Image Object Detection Model (The Easy Way)

October 31, 2019

I've been trying to make and train a custom machine learning model for detecting specific objects in images. After some exploring, I found a massively easy way to do this. Here is my found solution to build, train, and output the model in the desired ML Format!

Machine Learning

Object Detection


January 2019

ODBC Driver and OLEDB Provider Issues and Potential Fixes

January 10, 2019

Issues with ODBC and OLEDB are quite annoying, typically found when trying to use these drivers to connect to an excel sheet. Here I detail how I solved my issues using IIS.





July 2018

Generate Code Coverage Badge with Gitlab CI and an Angular Project

July 23, 2018

As the title says, this is how to enable the code coverage badge with Angular on Gitlab CI. Also, I’ll show setting up a Gitlab pipeline for testing an Angular application at the end.



Continuous Integration

If you want to know what I use on a semi daily basis check out my /uses page

Caleb Ukle © 2018 - 2020