When writing out a type or interface in TypeScript for something that will be fed into a recursive function you could cop out and use any or you could properly define the structure. Fortunately, both type and interface allow you…
By way of recommendation (thanks Brewer), I’ve been messing around with Slate.js a ton. Such is life, I did have my fair share of issues, particularly in terms of getting it to function like a chat message input where hitting…
I’ve been messing with Slate.js and happen to be using it in the context of having a persistent editor on the page that can be used post from. It’s sort of like a chat’s message input, it’s always there, and…
Slate.js has some wonderful undo/redo history under the hood, by way of the React hook useMemo. Out of the box is works great, but if you want to reset your editor back to an empty state (in scenarios where the…
Been working on something recently where I wanted to implement a submit handler when a user hits the enter key in an input. That’s not that big of a deal, sniff out the key being pressed, and if it’s the…
Been hot on a new [old] project recently and I’ve not only been coding my ass off, but delving into some territory that I haven’t delved into as of late. The latest is in terms of determining if a modifier…
Yes, this month’s post actually has less providers. There’s a good reason though. This month I decided to switch it up and compare some of the “CPU”-centric instances that some of the providers are touting these days. Because Lightsail and…
Not sure what it is about a quarantine that has people itching to bake. The interest in my sourdough starter has exploded over the last few weeks. Ton of inquiries on how to get one started, how to care for…
React Router makes it extremely easy to define routing in your React application, but out of the box doesn’t concern itself with which routes should require authentication and which ones should now. I’ve solved this problem in a past life,…
Been a minute since I’ve done one of these comparisons. The first one took place in 2016 with annual follow ups in 2017 and 2018. Then there was the curious case of 2019 where I had this post in my…