Skip to content
View colin-gourlay's full-sized avatar

Block or report colin-gourlay

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
colin-gourlay/README.md

Colin Gourlay

Software Engineer · Self-Hosting Advocate · Music Obsessive

Building purposeful software — clean architectures, developer tooling, and the occasional vanity project.


About

I'm a software engineer with a fondness for clean architecture, strong opinions about tooling, and an embarrassingly deep interest in music.

By day I design and build .NET systems with a focus on clean architecture, proper testing, and CI/CD that actually works. By night I run self-hosted infrastructure, build Obsidian plugins, and over-engineer my music library. When I'm away from the keyboard you'll find me training for a triathlon or hunting down a record.


🛠️ Tech Stack

Category Technologies
Languages C# TypeScript Python HTML5
Frameworks .NET ASP.NET Core Hugo
Patterns Clean Architecture · Mediator · Result Pattern · Vertical Slice
Infra & Tooling Docker GitHub Actions Dev Containers
Daily Drivers Obsidian Home Assistant Tailscale

🚀 Selected Work

An eclectic radio station built on Hugo with a bespoke .NET 10 content operations pipeline. The pipeline handles album intake, Spotify and Lidarr integration, and automated publishing — all packaged as a self-contained binary with a GHCR-published Docker image.

Tech: .NET 10 · Clean Architecture · Mediator · ErrorOr · Docker · GitHub Actions · Hugo


A TypeScript plugin for Obsidian that brings CookLang recipe management into your knowledge base. Render, browse, and manage structured recipes alongside your notes.

Tech: TypeScript · Obsidian API


Sample project demonstrating fitness data integration with the Strava API via Strava.NET — a useful reference for anyone building health and activity tracking applications.

Tech: C# · .NET · Strava API


A structured, opinionated productivity system: reusable Todoist templates, weekly review workflows, and automation patterns for power users who want repeatability without the overhead.


📊 Stats

GitHub Stats

Top Languages


📡 Recent Activity

Last updated: 17 April 2026 at 09:35 UTC


🗂️ Repositories

Last updated: 17 April 2026 at 09:35 UTC


⭐ Starred Repositories

🕐 Recently Starred

  • mvanhorn/last30days-skill — AI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymark Python ⭐ 22,392
  • addyosmani/agent-skills — Production-grade engineering skills for AI coding agents. Shell ⭐ 16,710
  • lsdefine/GenericAgent — Self-evolving agent: grows skill tree from 3.3K-line seed, achieving full system Python ⭐ 3,163
  • public-apis/public-apis — A collective list of free APIs Python ⭐ 424,346
  • microsoft/markitdown — Python tool for converting files and office documents to Markdown. Python ⭐ 110,846
  • gsd-build/get-shit-done — A light-weight and powerful meta-prompting, context engineering and spec-driven JavaScript ⭐ 54,238

🗺️ Language Interests

TypeScript ×10 · Python ×7 · Shell ×2 · Go ×2 · JavaScript ×1 · Jupyter Notebook ×1 · HTML ×1 · Kotlin ×1

Last updated: 17 April 2026 at 09:35 UTC


✨ The Recent Activity, Repositories, and Starred Repositories sections above are refreshed daily via GitHub Actions

Pinned Loading

  1. todoist-playbook todoist-playbook Public

    A structured productivity playbook for Todoist - reusable templates, weekly review systems, and automation-ready workflows for power users.

    1

  2. sundown-sessions sundown-sessions Public

    Automated radio show platform combining a Hugo site with a custom .NET pipeline for music ingestion, metadata enrichment, and continuous publishing.

    HTML 1