Things I've written down.

Coffee thoughts on some things I worked on. Mainly so I can go back and remember what I did.

Mono Repo For Multiple Scoped Packages With Lerna

Turbo Repo is what I use for my mono repos for my apps. I love it for projects where the focus is sharing my own code. Lerna is now what I use for my mono repos for my packages. In this article I'll show why.

API Gateway API Keys using the Serverless Framework

We can create API Keys specifically for our API Gateway endpoints that enforce a usage policy. We can enforce service-to-service authorization with this method, but this is a **great way to monetize our APIs!** Normally we would have a bearer token or a JWT token that we would use to authenticate our requests. However, API Keys are a great way to enforce authentication to our API outside of the context that someone is signed in to our application.

Toast GraphQL Mutation Results

With this method, you can toast the results of a GraphQL mutation in a React app. It will show success, or any errors the server returns.

Reactive React with RxJS

Using WebSockets is a great way to build highly interactive real-time apps. Using raw WebSockets in React can be cumbersome. RxJS is a great way to manage streams of data in JavaScript and makes reactive React a delight.

WebSockets With RxJS

WebSockets are a great way to communicate with a server in real time. RxJS is a great way to handle streams of data. Let's combine the two! In this article, we'll look at how to use RxJS to create a WebSocket connection and send and receive messages.

Unlocking the Power of Global Secondary Indexes (GSI) in AWS DynamoDB for Enhanced Flexibility

In AWS DynamoDB, Global Secondary Indexes (GSIs) are much better than Local Secondary Indexes (LSIs) because they're super flexible. GSIs let you search for stuff in all sorts of different ways and make changes without redoing the whole table, which LSIs can't do. Plus, LSIs are a one-time deal. Only once while you create the table, you can't add them later.