Projects

I am passionate about building tools and systems that help developers be more productive and successful. Here is a collection of open-source projects I have created or contributed to over the years, organized by focus area.

AI

As AI transforms the technology landscape, I have been building tools to help developers leverage these powerful capabilities:

  • AI Chat Accelerator - A production-ready reference implementation for building RAG-based AI chat applications on AWS.
  • Bedrock Tools - A streamlined Python library for working with Amazon Bedrock’s Conversation API.
  • AWS News Agent - An AI-powered assistant that helps you stay current with AWS news and announcements.
  • Page Insights - Leverage AI to generate intelligent summaries of web pages.

AWS Containers Expertise

I was an early adopter and advocate for AWS Fargate, creating several widely adopted tools that improved the developer experience:

Fargate Tooling

  • Fargate Create CLI - A pioneering CLI tool for scaffolding AWS ECS Fargate applications, featuring an opinionated multi-environment setup and an extensive template library.
  • Fargate CLI - Simplifies image deployments with support for docker-compose.yml files.
  • Fargate CLI Build - Build environment for the Fargate CLI.
  • Terraform Fargate - Simplified, less opinionated version of fargate-create for Fargate deployments.
  • Fargate SAM - Template for deploying public ALB + ECS Fargate services using CloudFormation and SAM CLI.
  • Fargate SQS Worker - Boilerplate for Fargate containers processing SQS queues.

Fargate Infrastructure Templates

A collection of production-grade Terraform templates for AWS container deployments (compatible with the Fargate Create CLI tool):

Other AWS Container Tools

Developer Productivity Tools

Go Tools & Libraries

I have created numerous tools in Go to solve common development challenges:

  • Go HTMX Tailwind Example - Example CRUD app showcasing Go + HTMX + Tailwind CSS.
  • Gotoolbox - A collection of useful Go tools that use only the standard library, with no external dependencies.
  • S3lib - Simplified Go library for S3 operations.
  • Scaffolder - Go library for tools that generate files and directory structures.
  • SecretsManager Sidecar - An elegant solution for managing AWS Secrets in containerized environments.
  • Default Backend - Simple HTTP server for health checks and default responses.
  • KPL Server - Multi-language support for the Amazon Kinesis Producer Library, which is written in Java.
  • KPL Client Go - Go client library for KPL Server.
  • Protonizer - CLI tool for AWS Proton Infrastructure as Code.

Project Templates

Battle-tested starter templates that accelerate development:

AWS Cloud Architecture

Solutions and reference implementations for various cloud architecture patterns:

Container Orchestration

Tools for container management and deployment:

  • Harbor - An abstraction layer for container orchestration systems.
  • Harbor Compose - A Docker Compose-like tool for Harbor deployments (written in Go).
  • Harbor Terraform Provider - Use Terraform to manage Harbor applications (written in Go).

🔧 My Development Environment: Check out my dotfiles to see how I set up my development environment.