build-a-realtime-chat-app-with-remix-and-supabase
build-a-realtime-chat-app-with-remix-and-supabase copied to clipboard
This repo accompanies a free egghead course demonstrating how to build a realtime chat app with Remix and Supabase
Build a Realtime Chat App with Remix and Supabase
This repo accompanies this free egghead course.
🔍 About
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.
🎓 Instructor
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.
🗺 Table of Contents
- 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