Toolkit
My tech stack.
Languages, frameworks, databases, and infrastructure I use to ship accessible web apps, APIs, CMS platforms, and production systems — from government portals to product work like Servd.
Foundations
Programming languages.
The languages I reach for day to day across APIs, frontends, CMS work, and data pipelines.
TypeScript
Primary language for Next.js apps and shared types across REST/GraphQL clients and services.
JavaScript
Used across Craft CMS portals, interactive UI flows, and production browser tooling.
Go
Built Gin REST APIs for Servd and client projects needing fast, lean backend services.
Python
FastAPI services and data-oriented backends deployed behind Nginx on AWS.
PHP
Craft CMS plugins, Twig-powered sites, and high-traffic government application portals.
SQL
Schema design, migrations, pooling, and ETL work across MySQL, MSSQL, PostgreSQL, and SQLite.
Interfaces
Frontend.
Accessible, performant UIs — maps, itineraries, bilingual search, and enterprise dashboards.
Next.js
App Router sites and web apps for heritage platforms, enterprise clients, and Servd.
React
Component-driven interfaces including NFC programming tools and project tracking apps.
Tailwind CSS
Utility-first styling for responsive, consistent UI across client and product work.
Bootstrap 5
Craft CMS application portals serving 15,000+ Canadians with structured multi-step flows.
Zustand
Client state for bilingual search, filters, and itinerary management in Next.js apps.
TanStack
Data fetching and table/query patterns for interactive, filter-heavy frontend experiences.
Mapbox GL JS
Interactive map clustering and location search for heritage itineraries and Servd.
Twig
Craft CMS templates powering bilingual page types and reusable UI component models.
HTML
Semantic, accessible markup for AODA/WCAG-compliant public-facing experiences.
CSS
Responsive layouts and design systems with Tailwind, Bootstrap, and custom styling.
Services
Backend.
REST and GraphQL APIs, CMS platforms, ETL workers, and modular service architectures.
Node.js
Express APIs, cron workers, and ETL microservices with pooling, caching, and retries.
Express.js
Paginated REST routes for Ontario heritage data with compression and apicache.
Go / Gin
High-performance REST APIs for Servd subscriptions, search, and restaurant data.
FastAPI
Python REST backends reverse-proxied with Nginx and served on AWS infrastructure.
GraphQL
Craft CMS → Next.js content pipelines for normalized bilingual content delivery.
Craft CMS
Content models, custom PHP plugins, and portals for heritage and government workflows.
Payload CMS
Headless CMS experience for modern content-driven product and client builds.
Data
Databases.
Relational data design, zero-downtime sync strategies, and production connection pooling.
MySQL
Primary datastore for heritage APIs, ETL promotion strategies, and enterprise apps.
PostgreSQL
Servd’s production database for restaurants, collections, itineraries, and subscriptions.
MSSQL
Source system in a Node.js ETL syncing 1600+ heritage sites into MySQL atomically.
SQLite
Lightweight local and embedded data storage for prototypes, tooling, and smaller services.
Delivery
DevOps & infrastructure.
Containers, CI/CD, Linux servers, and multi-cloud hosting from prototype to production.
Docker
Multi-service Dockerized architectures for APIs, workers, and local/prod parity.
GitHub Actions
Automated build, test, and deploy pipelines for reliable shipping.
Buddy
CI/CD pipelines for client deployments and release automation.
AWS
Hosting and infrastructure for enterprise web apps serving Home Depot, Circle K, and more.
GCP
Cloud infrastructure for client workloads alongside AWS and VPS deployments.
Nginx
Reverse proxying for Python/Go services and production traffic routing.
Git
Branching, reviews, and collaboration across agencies, products, and client codebases.
Linode / Hostinger
Provisioning and maintaining Debian servers for hosted client and product workloads.
Platforms
Tools & platforms.
Auth, testing, messaging, payments, and AI tooling that show up in real product work.
Auth0
Secure authentication for enterprise Next.js apps with role-based access needs.
Jest
Unit and integration testing for reliable frontend and Node.js service changes.
Postman
API design, exploration, and regression checks across REST resource routes.
OpenAI
Admin pipelines that parse and import menu/restaurant data for Servd at scale.
Telnyx
Scheduled SMS notifications with backoff retry logic in a Node.js cron worker.
Autumn
Tiered subscription billing model powering Servd’s monetization layer.
PostHog
Product analytics and event tracking to understand usage and guide iteration.
Want to build something?
Let's talk.