<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>martzmakes.com</title><id>https://martzmakes.com/</id><updated>2026-05-22T17:12:19.866Z</updated><entry><title>The $4 Social Network Grew Up</title><link href="https://martzmakes.com/the-4-dollar-network-grew-up"/><id>https://martzmakes.com/the-4-dollar-network-grew-up</id><updated>2026-05-22T17:12:19.866Z</updated><summary>Four days after launching a social network on $4/mo of AWS, I moved my real identity onto it, bridged it to the Fediverse, and taught Claude to run it over MCP.</summary></entry><entry><title>It's My Birthday and I'm Giving YOU the Gift: Serverless MCP Servers That Cost Less Than Birthday Cake 🎂</title><link href="https://martzmakes.com/its-my-birthday-and-im-giving-you-the-gift-serverless-mcp-servers-that-cost-less-than-birthday-cake"/><id>https://martzmakes.com/its-my-birthday-and-im-giving-you-the-gift-serverless-mcp-servers-that-cost-less-than-birthday-cake</id><updated>2025-09-10T00:00:00.000Z</updated><summary>How serverless architecture is transforming the way AI assistants connect to your tools and data</summary></entry><entry><title>One Client, Two Worlds: Building a Type-Safe API and ReAct Agent Interface with Zod, LangGraph, and AWS</title><link href="https://martzmakes.com/one-client-two-worlds-building-a-type-safe-api-and-react-agent-interface-with-zod-langgraph-and-aws"/><id>https://martzmakes.com/one-client-two-worlds-building-a-type-safe-api-and-react-agent-interface-with-zod-langgraph-and-aws</id><updated>2025-04-26T00:00:00.000Z</updated><summary>In this post, I’ll show you how I built a single TypeScript framework for creating robust, schema-validated API clients that serve both humans and ReAct agents</summary></entry><entry><title>Crafting the Ultimate Serverless Discord Slash Bot with AWS Lambda</title><link href="https://martzmakes.com/crafting-the-ultimate-serverless-discord-slash-bot-with-aws-lambda"/><id>https://martzmakes.com/crafting-the-ultimate-serverless-discord-slash-bot-with-aws-lambda</id><updated>2025-02-22T00:00:00.000Z</updated><summary>Unleash the power of serverless architecture by building a Discord bot that elegantly processes slash commands using AWS Lambda and AWS CDK. We’ll tap into the</summary></entry><entry><title>Secure Your Serverless App with Cognito’s Managed Login Pages</title><link href="https://martzmakes.com/secure-your-serverless-app-with-cognitos-managed-login-pages"/><id>https://martzmakes.com/secure-your-serverless-app-with-cognitos-managed-login-pages</id><updated>2025-02-04T00:00:00.000Z</updated><summary>When you think about user authentication, you might picture wrestling with OAuth flows, wrestling with JWT tokens, or setting up a dozen redirects just to log a</summary></entry><entry><title>Rendering Diagrams with AWS Lambda</title><link href="https://martzmakes.com/rendering-diagrams-with-aws-lambda"/><id>https://martzmakes.com/rendering-diagrams-with-aws-lambda</id><updated>2024-12-21T00:00:00.000Z</updated><summary>Diagrams are the unsung heroes of technical projects. Whether you’re sketching out the architecture of your latest application or untangling the web of nodes in</summary></entry><entry><title>The &quot;Backend For Frontend&quot; (BFF) Pattern</title><link href="https://martzmakes.com/the-backend-for-frontend-bff-pattern"/><id>https://martzmakes.com/the-backend-for-frontend-bff-pattern</id><updated>2024-09-16T00:00:00.000Z</updated><summary>It’s exhausting, isn’t it? Crafting this pristine backend, where services are finely tuned with domain logic, validation, and business rules, all while your poo</summary></entry><entry><title>Supercharging a Serverless Slackbot with Amazon Bedrock</title><link href="https://martzmakes.com/cdk-slackbot-bedrock"/><id>https://martzmakes.com/cdk-slackbot-bedrock</id><updated>2023-11-07T00:00:00.000Z</updated><summary>In the dynamic world of software development, staying abreast of changes and deployments is crucial for team collaboration and efficiency. In my previous post,</summary></entry><entry><title>From Code to Conversation: Bridging GitHub Actions and Slack with CDK</title><link href="https://martzmakes.com/cdk-slackbot"/><id>https://martzmakes.com/cdk-slackbot</id><updated>2023-08-21T00:00:00.000Z</updated><summary>In this post, we're diving into the powerful world of automation using the AWS Cloud Development Kit (CDK) to create a serverless-backed Slack App. The goal? Se</summary></entry><entry><title>Amplifying AWS Tutorials: Building a Social Notes App with &quot;Sign in with Apple&quot; and AWS Pinpoint Analytics</title><link href="https://martzmakes.com/amplifying-aws-tutorials-building-a-social-notes-app-with-sign-in-with-apple-and-aws-pinpoint-analytics"/><id>https://martzmakes.com/amplifying-aws-tutorials-building-a-social-notes-app-with-sign-in-with-apple-and-aws-pinpoint-analytics</id><updated>2023-08-01T00:00:00.000Z</updated><summary>For the 2023 AWS Amplify + Hashnode Hackathon, I wanted to take a closer look into iOS development and take the introductory iOS notes app from AWS Amplify's tu</summary></entry><entry><title>Leveraging CDK and Serverless for Bluesky Feed Generation</title><link href="https://martzmakes.com/leveraging-cdk-and-serverless-for-bluesky-feed-generation"/><id>https://martzmakes.com/leveraging-cdk-and-serverless-for-bluesky-feed-generation</id><updated>2023-07-05T00:00:00.000Z</updated><summary>In the dynamic world of social media, Bluesky is carving out a niche with its innovative approach to content curation. With its unique &quot;My Feeds&quot; feature, Blues</summary></entry><entry><title>Destroy THEIR Stacks - Ephemeral CDK Stacks as a Service</title><link href="https://martzmakes.com/destroy-their-stacks-ephemeral-cdk-stacks-as-a-service"/><id>https://martzmakes.com/destroy-their-stacks-ephemeral-cdk-stacks-as-a-service</id><updated>2023-06-29T00:00:00.000Z</updated><summary>In this post, we will enhance our ephemeral stack architecture by consolidating the destruction process to a central service. We will utilize a stack lifetime t</summary></entry><entry><title>Creating an Aurora MySQL Database and Setting Up a Kinesis CDC Stream with AWS CDK</title><link href="https://martzmakes.com/creating-an-aurora-mysql-database-and-setting-up-a-kinesis-cdc-stream-with-aws-cdk"/><id>https://martzmakes.com/creating-an-aurora-mysql-database-and-setting-up-a-kinesis-cdc-stream-with-aws-cdk</id><updated>2023-06-26T00:00:00.000Z</updated><summary>Welcome to this comprehensive guide where we will be using the AWS Cloud Development Kit (CDK) to create an Aurora MySQL Database, initialize it using Custom Re</summary></entry><entry><title>Blink and It's Gone: Embracing Ephemeral CDK Stacks for Efficient DevOps</title><link href="https://martzmakes.com/blink-and-its-gone-embracing-ephemeral-cdk-stacks-for-efficient-devops"/><id>https://martzmakes.com/blink-and-its-gone-embracing-ephemeral-cdk-stacks-for-efficient-devops</id><updated>2023-05-30T00:00:00.000Z</updated><summary>I'm excited to announce that I'll be speaking at AWS Summit Washington, DC on June 8th, 2023, at 2:15PM (DEV206). My DevChat will discuss the benefits of epheme</summary></entry><entry><title>Breaking Bad Practices with CDK Aspects</title><link href="https://martzmakes.com/breaking-bad-practices-with-cdk-aspects"/><id>https://martzmakes.com/breaking-bad-practices-with-cdk-aspects</id><updated>2023-05-17T00:00:00.000Z</updated><summary>In the ever-evolving landscape of cloud infrastructure, AWS Cloud Development Kit (CDK) continues to stand as a groundbreaking tool, simplifying the process of</summary></entry><entry><title>Say Goodbye to Your CDK Stacks: A Guide to Self-Destruction</title><link href="https://martzmakes.com/say-goodbye-to-your-cdk-stacks-a-guide-to-self-destruction"/><id>https://martzmakes.com/say-goodbye-to-your-cdk-stacks-a-guide-to-self-destruction</id><updated>2023-02-22T00:00:00.000Z</updated><summary>Are you tired of constantly managing your CDK Stacks and dealing with the associated costs? If so, self-destructing CDK Stacks might be the solution you've been</summary></entry><entry><title>Improving a Serverless App To Cross-Post Blogs</title><link href="https://martzmakes.com/improving-a-serverless-app-to-cross-post-blogs"/><id>https://martzmakes.com/improving-a-serverless-app-to-cross-post-blogs</id><updated>2023-02-21T00:00:00.000Z</updated><summary>Allen Helton is an AWS Hero and absolute LEGEND. In December he wrote a post titled &quot;I Built a Serverless App To Cross-Post My Blogs&quot; and after some begging fro</summary></entry><entry><title>Core Web Vitals, CDK Constructs and YOU!</title><link href="https://martzmakes.com/core-web-vitals-cdk-constructs-and-you"/><id>https://martzmakes.com/core-web-vitals-cdk-constructs-and-you</id><updated>2023-02-01T00:00:00.000Z</updated><summary>As a web developer, you know the importance of delivering a fast and smooth user experience. But with the constantly evolving web landscape, it can be challengi</summary></entry><entry><title>Automate Documenting EventBridge Schemas in EventCatalog</title><link href="https://martzmakes.com/automate-documenting-eventbridge-schemas-in-eventcatalog"/><id>https://martzmakes.com/automate-documenting-eventbridge-schemas-in-eventcatalog</id><updated>2022-10-27T00:00:00.000Z</updated><summary>In this series we're going to SUPERCHARGE developer experience by implementing Event Driven Documentation.  In part 1 we used CDK to deploy EventCatalog to a cu</summary></entry><entry><title>Automate Documenting API Gateways in EventCatalog</title><link href="https://martzmakes.com/automate-documenting-api-gateways-in-eventcatalog"/><id>https://martzmakes.com/automate-documenting-api-gateways-in-eventcatalog</id><updated>2022-10-26T00:00:00.000Z</updated><summary>In this series we're going to SUPERCHARGE developer experience by implementing Event Driven Documentation.  In part 1 we used CDK to deploy EventCatalog to a cu</summary></entry><entry><title>Using AWS CDK to Deploy EventCatalog</title><link href="https://martzmakes.com/using-aws-cdk-to-deploy-eventcatalog"/><id>https://martzmakes.com/using-aws-cdk-to-deploy-eventcatalog</id><updated>2022-10-24T00:00:00.000Z</updated><summary>In this series we're going to SUPERCHARGE developer experience by implementing Event Driven Documentation.  In this post, we'll start by using CDK to deploy Eve</summary></entry><entry><title>Protect a Static Site with Auth0 Using Lambda@Edge and CloudFront</title><link href="https://martzmakes.com/protect-a-static-site-with-auth0-using-lambdaedge-and-cloudfront"/><id>https://martzmakes.com/protect-a-static-site-with-auth0-using-lambdaedge-and-cloudfront</id><updated>2022-10-14T00:00:00.000Z</updated><summary>In this post, we'll use AWS CDK to deploy a static site to an S3 Bucket, distribute the site using CloudFront, and protect it with a CloudFront Lambda@Edge func</summary></entry><entry><title>How to Use BinLogs to Make an Aurora MySQL Event Stream</title><link href="https://martzmakes.com/how-to-use-binlogs-to-make-an-aurora-mysql-event-stream"/><id>https://martzmakes.com/how-to-use-binlogs-to-make-an-aurora-mysql-event-stream</id><updated>2022-10-03T00:00:00.000Z</updated><summary>Aurora MySQL doesn’t offer a change data capture stream similar to DynamoDB Streams.  In this post we’re going to make one anyways by using the built-in MySQL B</summary></entry><entry><title>Inferring Architecture and Asynchronous Workflows using EventBridge Events</title><link href="https://martzmakes.com/inferring-architecture-and-asynchronous-workflows-using-eventbridge-events"/><id>https://martzmakes.com/inferring-architecture-and-asynchronous-workflows-using-eventbridge-events</id><updated>2022-06-29T00:00:00.000Z</updated><summary>In part 2 of my series on Event Driven Step Functions we'll create a completely separate CDK Application that will observe the event traffic generated from the</summary></entry><entry><title>Orchestrating Choreography with Event Driven Step Functions</title><link href="https://martzmakes.com/orchestrating-choreography-with-event-driven-step-functions"/><id>https://martzmakes.com/orchestrating-choreography-with-event-driven-step-functions</id><updated>2022-06-27T00:00:00.000Z</updated><summary>Two years ago The Burning Monk (AWS Hero Yan Cui) wrote a post about the differences between using a loosely coupled event driven architecture (choreography) vs</summary></entry><entry><title>Create a Cross-Account IAM Authorized APIGateway with CDK</title><link href="https://martzmakes.com/create-a-cross-account-iam-authorized-apigateway-with-cdk"/><id>https://martzmakes.com/create-a-cross-account-iam-authorized-apigateway-with-cdk</id><updated>2022-06-09T00:00:00.000Z</updated><summary>I have a use case where I need a lambda in AWS account A to privately request information from an APIGateway in AWS account B.  Normally we do this using Auth0</summary></entry><entry><title>Did I just invent CDK Level 4 Constructs?!?</title><link href="https://martzmakes.com/did-i-just-invent-cdk-level-4-constructs"/><id>https://martzmakes.com/did-i-just-invent-cdk-level-4-constructs</id><updated>2022-04-22T00:00:00.000Z</updated><summary>At work we use a Multi-bus, multi-account Event Driven Architecture pattern.  It works great, but a pain point is making event interfaces match across multiple</summary></entry><entry><title>Creating CDK Pipeline Constructs to Improve Developer Experience</title><link href="https://martzmakes.com/creating-cdk-pipeline-constructs-to-improve-developer-experience"/><id>https://martzmakes.com/creating-cdk-pipeline-constructs-to-improve-developer-experience</id><updated>2022-02-10T00:00:00.000Z</updated><summary>Projects with an integrated CDK Pipeline can be cumbersome (at times) when you need to deploy into a developer-friendly/sandbox account WITHOUT the pipeline.  I</summary></entry><entry><title>CDK Pipelines Crash Course</title><link href="https://martzmakes.com/cdk-pipelines-crash-course"/><id>https://martzmakes.com/cdk-pipelines-crash-course</id><updated>2022-02-09T00:00:00.000Z</updated><summary>CDK Pipelines is an opinionated construct library. It is purpose-built to deploy one or more copies of your CDK applications using CloudFormation with a minimal</summary></entry><entry><title>How To Convert a Lambda to a Step Function</title><link href="https://martzmakes.com/how-to-convert-a-lambda-to-a-step-function"/><id>https://martzmakes.com/how-to-convert-a-lambda-to-a-step-function</id><updated>2022-01-06T00:00:00.000Z</updated><summary>I attended AWS re:Invent 2021 in-person and one of my big takeaways was the focus on AWS Step Functions.  With the late September announcement that Step Functio</summary></entry><entry><title>Improving EventBridge Schema Discovery</title><link href="https://martzmakes.com/improving-eventbridge-schema-discovery"/><id>https://martzmakes.com/improving-eventbridge-schema-discovery</id><updated>2021-07-30T00:00:00.000Z</updated><summary>In my previous post experimenting with EventBridge, Evaluating AWS EventBridge Schema Discovery I used AWS Schema Registry with Event Discovery and tried out a</summary></entry><entry><title>Evaluating AWS EventBridge Schema Discovery</title><link href="https://martzmakes.com/evaluating-aws-eventbridge-schema-discovery"/><id>https://martzmakes.com/evaluating-aws-eventbridge-schema-discovery</id><updated>2021-07-24T00:00:00.000Z</updated><summary>This article is going to experiment with EventBridge and the AWS Schema Registry with Event Discovery and evaluate EventBridge Atlas which is a 3rd party tool t</summary></entry><entry><title>Creating Verifiable JSON Web Tokens (JWTs) with AWS CDK</title><link href="https://martzmakes.com/creating-verifiable-json-web-tokens-jwts-with-aws-cdk"/><id>https://martzmakes.com/creating-verifiable-json-web-tokens-jwts-with-aws-cdk</id><updated>2021-03-06T00:00:00.000Z</updated><summary>JSON Web Tokens (JWTs, pronounced &quot;jots&quot;) are pretty neat.  You can use JWTs to share information in a way that you can verify it wasn't altered.</summary></entry><entry><title>Using AWS Amplify to Rapid Prototype a Real-Time Dungeons&amp;Dragons Map</title><link href="https://martzmakes.com/using-aws-amplify-to-rapid-prototype-a-real-time-dungeonsanddragons-map"/><id>https://martzmakes.com/using-aws-amplify-to-rapid-prototype-a-real-time-dungeonsanddragons-map</id><updated>2021-02-28T00:00:00.000Z</updated><summary>TL;DR -</summary></entry><entry><title>Automatically Keep Postman Collections In Sync With OpenAPI Specs</title><link href="https://martzmakes.com/automatically-keep-postman-collections-in-sync-with-openapi-specs"/><id>https://martzmakes.com/automatically-keep-postman-collections-in-sync-with-openapi-specs</id><updated>2021-02-08T00:00:00.000Z</updated><summary>This post will show you how to take an OpenAPI Spec file and automatically generate a Postman Collection of API tests with minimal configuration.  This is espec</summary></entry><entry><title>Lock Down DynamoDB with IAM Policy Conditions</title><link href="https://martzmakes.com/lock-down-dynamodb-with-iam-policy-conditions"/><id>https://martzmakes.com/lock-down-dynamodb-with-iam-policy-conditions</id><updated>2021-01-19T00:00:00.000Z</updated><summary>At work we've begun exploring the use of IAM policy conditions to limit access to items in our DynamoDB Tables.  This gives a much more specific level of contro</summary></entry><entry><title>Moving S3-Triggered Lambdas to EventBridge with CDK</title><link href="https://martzmakes.com/moving-s3-triggered-lambdas-to-eventbridge-with-cdk"/><id>https://martzmakes.com/moving-s3-triggered-lambdas-to-eventbridge-with-cdk</id><updated>2020-12-22T00:00:00.000Z</updated><summary>Lately I've been encountering some issues with a particular architecture for propagating data changes between multiple AWS accounts.  The current architecture r</summary></entry><entry><title>Hashnode's 2Articles1Week Challenge</title><link href="https://martzmakes.com/hashnodes-2articles1week-challenge"/><id>https://martzmakes.com/hashnodes-2articles1week-challenge</id><updated>2020-11-08T00:00:00.000Z</updated><summary>Hashnode has a thing where they have occasional challenges to earn &quot;badges&quot; on their site.  The first challenge I participated in was their 2Articles1Week Chall</summary></entry><entry><title>Hashnode with DEV.to?</title><link href="https://martzmakes.com/hashnode-with-devto"/><id>https://martzmakes.com/hashnode-with-devto</id><updated>2020-11-07T00:00:00.000Z</updated><summary>TL;DR... it's probably worth it to post to both hashnode and dev.to.  Use this link to create a hashnode account: https://hashnode.com/@martzcodes/joinme</summary></entry><entry><title>OpenAPI Specs from CDK Stack WITHOUT Deploying First</title><link href="https://martzmakes.com/openapi-specs-from-cdk-stack-without-deploying-first"/><id>https://martzmakes.com/openapi-specs-from-cdk-stack-without-deploying-first</id><updated>2020-11-05T00:00:00.000Z</updated><summary>In my last post How to Automatically Generate Request Models from TypeScript Interfaces, I walked through how to automatically define request and response model</summary></entry><entry><title>What is an AWS Community Builder?</title><link href="https://martzmakes.com/what-is-an-aws-community-builder"/><id>https://martzmakes.com/what-is-an-aws-community-builder</id><updated>2020-10-31T00:00:00.000Z</updated><summary>On July 30, 2020 AWS announced a new AWS Community Builders Program.  I applied and in October 2020 I was accepted into the program!</summary></entry><entry><title>How to Automatically Generate Request Models from TypeScript Interfaces</title><link href="https://martzmakes.com/how-to-automatically-generate-request-models-from-typescript-interfaces"/><id>https://martzmakes.com/how-to-automatically-generate-request-models-from-typescript-interfaces</id><updated>2020-10-30T00:00:00.000Z</updated><summary>I ♥️ AWS CDK (big CDK fan-boi) and have several projects at work that make use of CDK with AWS's APIGateway.  But there isn't an easy way to do API Request Vali</summary></entry><entry><title>Token Authorizers with APIGatewayV2 (tricks APIGWv1 doesn't want you to know)</title><link href="https://martzmakes.com/token-authorizers-with-apigatewayv2-tricks-apigwv1-doesnt-want-you-to-know"/><id>https://martzmakes.com/token-authorizers-with-apigatewayv2-tricks-apigwv1-doesnt-want-you-to-know</id><updated>2020-08-06T00:00:00.000Z</updated><summary>I came across a problem at work where we want to use APIGateway Version 2... but there isn't a clear example for how to use Authorizers with it.</summary></entry><entry><title>Using DynamoDB Streams to sync back to your old database</title><link href="https://martzmakes.com/using-dynamodb-streams-to-sync-back-to-your-old-database"/><id>https://martzmakes.com/using-dynamodb-streams-to-sync-back-to-your-old-database</id><updated>2020-06-25T00:00:00.000Z</updated><summary>In my continuing saga of database and api modernization, I'm going to explore using DynamoDB streams to back-propagate data to the old MySQL database.  I'm hopi</summary></entry><entry><title>DynamoDB, Lambdas and API GW with localstack (or not)</title><link href="https://martzmakes.com/dynamodb-lambdas-and-api-gw-with-localstack-or-not"/><id>https://martzmakes.com/dynamodb-lambdas-and-api-gw-with-localstack-or-not</id><updated>2020-06-19T00:00:00.000Z</updated><summary>My original goal for this post was to get a local version of DynamoDB, API Gateway and Lambdas up and running using localstack.  Unfortunately localstack doesn'</summary></entry><entry><title>Using GitHub's API to search for code references across multiple organizations</title><link href="https://martzmakes.com/using-githubs-api-to-search-for-code-references-across-multiple-organizations"/><id>https://martzmakes.com/using-githubs-api-to-search-for-code-references-across-multiple-organizations</id><updated>2020-06-05T00:00:00.000Z</updated><summary>Background</summary></entry><entry><title>Migrating Full-Stack Apps from Poly-Repo to Mono-Repo</title><link href="https://martzmakes.com/migrating-full-stack-apps-from-poly-repo-to-mono-repo"/><id>https://martzmakes.com/migrating-full-stack-apps-from-poly-repo-to-mono-repo</id><updated>2020-03-25T00:00:00.000Z</updated><summary>In this post I'm going to create a super-basic Nx-backed mono-repo app and dockerize it.</summary></entry><entry><title>AWS SAM local with postgres</title><link href="https://martzmakes.com/aws-sam-local-with-postgres"/><id>https://martzmakes.com/aws-sam-local-with-postgres</id><updated>2020-03-19T00:00:00.000Z</updated><summary>In this post we're going to create two super-basic lambda functions that read and write to a postgres table using AWS Severless Application Model (SAM), Docker(</summary></entry><entry><title>Integration testing across multiple repos with Codefresh</title><link href="https://martzmakes.com/integration-testing-across-multiple-repos-with-codefresh"/><id>https://martzmakes.com/integration-testing-across-multiple-repos-with-codefresh</id><updated>2020-03-07T00:00:00.000Z</updated><summary>Let's say you're like me and you happen to have a project that consists of PHP (🤮)... or an Angular app... or Golang... with some embedded react components...</summary></entry><entry><title>Writing an Angular Schematic to add a Lazy Loaded Feature Route</title><link href="https://martzmakes.com/writing-an-angular-schematic-to-add-a-lazy-loaded-feature-route"/><id>https://martzmakes.com/writing-an-angular-schematic-to-add-a-lazy-loaded-feature-route</id><updated>2019-06-11T00:00:00.000Z</updated><summary>title: Writing an Angular Schematic to add a Lazy Loaded Feature Route</summary></entry><entry><title>Are You a Jerk?</title><link href="https://martzmakes.com/are-you-a-jerk"/><id>https://martzmakes.com/are-you-a-jerk</id><updated>2019-05-05T00:00:00.000Z</updated><summary>title: Are You a Jerk?</summary></entry></feed>