GithubHelp home page GithubHelp logo

dijonmusters / build-a-realtime-chat-app-with-remix-and-supabase Goto Github PK

View Code? Open in Web Editor NEW
24.0 3.0 5.0 550 KB

This repo accompanies a free egghead course demonstrating how to build a realtime chat app with Remix and Supabase

Home Page: https://egghead.io/courses/build-a-realtime-chat-app-with-remix-and-supabase-d36e2618

JavaScript 15.28% TypeScript 84.72%
remix remix-run supabase typescript

build-a-realtime-chat-app-with-remix-and-supabase's Introduction

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!

Jon's courses at egghead.

Follow Jon Meyers on Twitter and subscribe to his YouTube channel.

๐Ÿ—บ Table of Contents

  1. Create Supabase project
  2. Create Remix application
  3. Query Supabase data with Remix Loaders
  4. Generate TypeScript types from Supabase CLI
  5. Implement Supabase Auth using GitHub
  6. Restrict access with RLS policies
  7. Automatically set session cookie with Supabase Auth Helpers
  8. Call active Loaders on Supabase Auth state change
  9. Mutate Supabase data with Remix Actions
  10. Subscribe to database changes with Supabase Realtime
  11. Deploy Remix app to Vercel

build-a-realtime-chat-app-with-remix-and-supabase's People

Contributors

dijonmusters avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

build-a-realtime-chat-app-with-remix-and-supabase's Issues

Access token missing when gen'ing ts types

In Section 4, i got an error when running supabase gen types typescript --project-id ...

Error: Access token not provided. Supply an access token by running supabase login or setting the SUPABASE_ACCESS_TOKEN environment variable.

Not sure if i missed a step. An running terminal outside of VS Code, but that shouldn't matter. I just copied the types from GH.

"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production."

There's an error I can't quite figure out.

It pops up when I try to login with GitHub, or anything.

I get

You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via window.history.pushState/window.location.hash instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.

The details are here. My repo is here.

Could anybody please take a look?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.