This repo accompanies this free egghead course.
Supabase is a collection of open-source tools that wrap around a PostgreSQL database. In this course, we look at building a realtime chat application with Remix, using Supabase for db hosting, authentication, authorization and subscribe to realtime db events - updating the UI as the database changes.
We will learn about:
- loaders and actions in Remix
- querying and mutating data with Supabase
- authentication with GitHub
- authorization with RLS
- merging client and server state with realtime events
- deploying a Remix app to Vercel
This course is 100% TypeScript, however, don't stress if you don't have any experience with TS, as Supabase does most of the heavy lifting here! ๐
Check out the Extensions section for ideas of how you can continue your learning journey after this course.
Jon Meyers is a Software Engineer, Educator and Hip Hop Producer from Melbourne, Australia. He's passionate about web development and enabling others to build amazing things! He is currently working as a Developer Advocate at Supabase, showing just how awesome (and not that scary ๐ป) databases can be!
Follow Jon Meyers on Twitter and subscribe to his YouTube channel.
- Create Supabase project
- Create Remix application
- Query Supabase data with Remix Loaders
- Generate TypeScript types from Supabase CLI
- Implement Supabase Auth using GitHub
- Restrict access with RLS policies
- Automatically set session cookie with Supabase Auth Helpers
- Call active Loaders on Supabase Auth state change
- Mutate Supabase data with Remix Actions
- Subscribe to database changes with Supabase Realtime
- Deploy Remix app to Vercel