How to Use TANStack Query to share data between Remix loaders by sergiodxa
The blog of sergiodxa
Remix Loaders are a great way to fetch data server-side before rendering the page. As of v1.10.0, you can use the useRevalidator hook to call these loaders whenever you want. In this video, Jon Meyers demonstrates how this can be paired with Supabase Auth and the onAuthStateChange hook to keep the UI in sync with the user's signed in state. GitHub repo: https://github.com/dijonmusters/remix-revalidation-on-demand To learn more about building an app with Remix and Supabase, check out this entirely free egghead course: https://egghead.io/courses/build-a-realtime-chat-app-with-remix-and-supabase-d36e2618?af=9qsk0a In this course we build a realtime chat application and learn about: 🍪 managing sessions with cookies using the Supabase Auth Helpers 🏢 fetching data server-side 🧙♀️ generating TypeScript definitions with the Supabase CLI ⏱️ merging realtime updates with loader data 00:00 Introduction 01:10 Creating Remix app 02:07 Adding a loader function 03:00 Empty action hack 05:33 Calling active loaders with useRevalidator 06:23 Creating a Supabase project 08:25 Instantiating a Supabase client 10:55 Implementing Supabase Auth 13:37 Revalidating data onAuthStateChange 15:10 Summary Other helpful resources 📜 Blog article: https://jonmeyers.io/blog/call-remix-loaders-on-demand-with-userevalidate 👇 Get more from Jon 👇 Twitter: https://twitter.com/jonmeyers_io Blog: https://jonmeyers.io/blog
This video shows how to configure VS Code to debug your Remix loaders and actions. NOTE: You can now use the `debugger` statement instead of the external `debug()` function. I tried this before, but it didn't work. Not sure why it works now. You still can't set a breakpoint inside a route module, but you can add `debugger` statement and it will break there. You can then step through your code. I will be re-recording this video with this new info. Get the launch configuration here: https://rmx.fyi/debug
HTTP Caching is a web fundamental every web developer should eventually learn. The quickest way to a slow website is to not understand caching and ofc, the best way to make your website fast is to take advantage of it. In this video we'll explain the basics of HTTP caching, how web browsers respond to it, and how CDNs take advantage of it, by building a bare-bones Node.js server and then quickly see how to specify caching headers in a Remix App.
Have you heard about our new Remix Stacks template the K-pop Stack? It combines Remix, Supabase, Tailwind, and more to give you a note creation app with auth to help jump start your own Remix creation. Check out how to make it your own and get it deployed to fast and free! Repo: https://github.com/netlify-templates/kpop-stack Blog Post: https://www.netlify.com/blog/deploy-your-remix-supabase-app-today!/
Learn more at https://remix.run
We will walk through a simple demonstration of a remix application using nested routes and parameterized routes. The use of nested routes helps me with component design and separation when architecting an application. Parameterized routes / Dynamic Routes contain state information that can through the parameters that are defined on the route. This provides powerful flexibility when designing your app and app's components. Putting the two together in an simple solution to be a reference when you build something amazing. Speaker bio: Aaron is an Information Technology Strategist, Thought Leader, and Diversity and Inclusion Trailblazer - Founder & CEO of Clearly Innovative. He believes technology and in his case coding is an enabler and an equalizer. Aaron has focused a large part of his career training and developing individuals who want to get into tech but cannot find the opening; through the apprenticeship program he ran at Clearly Innovative, teaching web and mobile development at Howard University, and the free technical videos on his Youtube Channel he just want to help others get a seat at the table of tech and innovation. Learn more at https://remix.run/conf/2022/speakers/aaron-k-saunders