Hey y'all, David here. You signed up for my newsletter at programmingarehard.com. I'm writing to let you know I've just published a new post about using my attempt at launching a Shopify app. I journeyed through the many sets of Shopify docs, implemented it in Remix, created a listing page, and got it all shut down by a reviewer. You can read it about it here: Failure to Launch (A Cautionary Shopify App Tale) Hope it's enlightening and that you have a productive Tuesday. ✌️ David |
For developers looking to learn useful tips and tricks.
React Router Guide React Router error reporting from scratch As awesome of developers as we all are, errors are bound to crop up in our apps. React Router allows us to be notified of these errors via a handleError function but what exactly can you do here? That's what my latest post covers. I'll teach you how to use source maps to pinpoint the source code where an error is coming from so you can jump on bugs faster. Check it out below. React Router error reporting from scratch. Currently...
React Router Tip Debounce Requests in React Router v7 Have you ever implemented a search input filter for table or grid of data in your app that needs to initiate fetching new, filtered, data? If you want to initiate the requests as the user changes the filter value without having to manually click a submit button you likely want to debounce those requests. Do you use a debounce hook and resort to useEffect to kick of requests?? No! There's a much easier way that doesn't involve adding a...
Hey y'all, David here. You signed up for my newsletter at programmingarehard.com. I'm super jazzed about what I have for you today! One of the inherent benefits of Single Page Apps(SPAs) I took for granted was the logging that comes out of the box via the Network tab in the console. Every api request happens in the browser and you can easily inspect those which is super handy. Once you move to something like Remix/React Router 7, you become painfully aware that you've lost access to that...