Easily Add Authentication With Nuxt 3 + Supabase

Поділитися
Вставка
  • Опубліковано 23 сер 2024

КОМЕНТАРІ • 72

  • @tolgabeyazoglu536
    @tolgabeyazoglu536 Рік тому +6

    It is very gratifying that you are making a video about nuxt js 3 when there is such a shortage of resources.

  • @psybitcoin
    @psybitcoin Рік тому +10

    Nice video. Would love to see more of this. Nuxt + Supabase - Features, Best Practices, SSR, SEO, Tests, etc
    Keep it up!

    • @JohnKomarnicki
      @JohnKomarnicki  Рік тому +3

      Thanks! I’ve got a course coming out that I’m working on building a saas application using this stack

  • @randel_mcafee86
    @randel_mcafee86 Рік тому +2

    Just in time as i have been looking to start a project using nuxt and supabase!

  • @BloodBunn
    @BloodBunn 3 місяці тому +1

    This was so useful, thanks!
    Please more nuxt and nuxt + supabase content

  • @christopher5731
    @christopher5731 6 місяців тому

    Man this video is so well done. Easy to understand, straight to the point. I love it. Keep it up!

  • @elementxyz
    @elementxyz 3 місяці тому +1

    Thank you for this wonderful video! Here and there you have to tweak some things, but this helps me a lot!

    • @JohnKomarnicki
      @JohnKomarnicki  3 місяці тому +1

      Thank you! Shortly after this video they updated the auth setup. I need to get around to creating an updated version

  • @welkerarantes9073
    @welkerarantes9073 11 днів тому

    Awesome video !!! 🤯 It helped me so much

  • @StellaCrewGaming
    @StellaCrewGaming 4 місяці тому

    Thank you so much, was able to figure out my issue thanks to this video!!

  • @adydetra_
    @adydetra_ Рік тому +8

    bro can you send this source code/repo and put link in description?

  • @larsnobel4279
    @larsnobel4279 2 місяці тому +2

    Not showing how template is build and no github repo?

  • @peoray
    @peoray Місяць тому

    how did you verify the user email? cause you can't login without confirming email but not shown in the video

  • @sonny5497
    @sonny5497 3 місяці тому

    thanks this was very helpful 💯

  • @bombrman1994
    @bombrman1994 9 місяців тому +2

    i need the repo so bad, i am stuck

  • @antoniogiroz
    @antoniogiroz Рік тому +1

    Can you create an additional video showing how to create a profile table to store the user info once is registered?

    • @JohnKomarnicki
      @JohnKomarnicki  Рік тому +2

      Yeah, I might do a follow up to a few things in regards to this video and that was one of them

  • @AyyLebo
    @AyyLebo Рік тому

    Great video, thanks !!

  • @xeon7879
    @xeon7879 Рік тому

    Thx for the video! Just a quick question: Would i need to use definePageMeta on every page or is it possible to define it on a layout for example and make it available to all pages? What would be the best solution for this?

  • @ManasMadrecha
    @ManasMadrecha Рік тому +1

    Very very helpful video on authentication. Just one doubt: if I want to add permission system (authorisation), i.e., users with only specific permissions can view certain elements of a page, what should be the best approach?
    Create a Users table postgres database in supabase and add different columns for each permission type?
    Can we reuse the Users table inside the supabase auth page, instead of creating new one in database page?

    • @JohnKomarnicki
      @JohnKomarnicki  Рік тому +4

      For different user levels you can use what are called custom claims. This is what I’m doing within my application. These values get stored on the raw_app_meta_data field of the users table in the auth schema. I might do a follow up video on this

    • @RootsterAnon
      @RootsterAnon Рік тому

      @@JohnKomarnicki please do. also can you show how to login user after he clicked on email link?

  • @martinpenev6750
    @martinpenev6750 10 місяців тому

    How does Supabase identify the user? Session ID in local storage? JWT?

  • @JuanBayonaBeriso
    @JuanBayonaBeriso Рік тому +3

    Does this work in server routes?

  • @eltonlrodriguez
    @eltonlrodriguez 10 місяців тому +1

    So I reproduced what I got here and I find myself in an interesting dilemma. I am stuck in the login page, and cannot seem to go to register despite my best attempts. The login does not work, despite having manually placing my credentials within supabase in order to test the login, console returns I'm not logged in either. When I check my supabase client to see if the connection string is correct (URL and anon string), it is all correct. Does anyone experience the same issues as myself? Or am I doing something wrong?

    • @JohnKomarnicki
      @JohnKomarnicki  10 місяців тому +3

      After this video was released supabase updated the auth. If your using nuxt, even if you have your own custom middleware it will still redirect you. You will need to add to the nuxt config a redirect:false property to the supabase config

    • @eltonlrodriguez
      @eltonlrodriguez 10 місяців тому

      @@JohnKomarnicki That did it! Thank you for reaching out and letting me know. It had been bothering me for days trying to understand what I was doing wrong.

    • @JohnKomarnicki
      @JohnKomarnicki  10 місяців тому

      Of course, glad to hear that it helped! If you do wanna learn more about that update specifically you can check out the nuxt supabase docs: supabase.nuxtjs.org/get-started#redirect

    • @eltonlrodriguez
      @eltonlrodriguez 10 місяців тому

      @@JohnKomarnicki I will check it out, thank you!

    • @jdhurrell
      @jdhurrell 10 місяців тому

      @@JohnKomarnicki Thanks for that. I also experienced that same issue recently and it was driving me mad. I opened a project that had been working fine a few weeks ago that suddenly would not allow anonymous access to existing pages. Thanks for the videos.

  • @user-mf2dj1tc2r
    @user-mf2dj1tc2r 6 місяців тому

    when i created a register page and add supabase it automatically redirect to the login page. any solution?

    • @JohnKomarnicki
      @JohnKomarnicki  6 місяців тому +1

      There’s a new option you need to define in the supabase config that went love not to long after this video was released. Check out the nuxt supabase docs, it’s highlighted there

  • @BloodBunn
    @BloodBunn 3 місяці тому

    auth.js from middleware (prevent access to profile page if !user.value)
    export default defineNuxtRouteMiddleware(() => {
    const user = useSupabaseUser()

    if (!user.value) {
    return navigateTo('/login')
    }
    })
    auth2.js from middleware (redirect the login page to profile page if logged in)
    export default defineNuxtRouteMiddleware(() => {
    const user = useSupabaseUser()

    if (user.value) {
    return navigateTo('/profile')
    }
    })

  • @masu4644
    @masu4644 5 місяців тому +1

    no codebase ? -_-

  • @JenniferBland
    @JenniferBland 11 місяців тому +1

    Is there a GitHub repo for this demo?

    • @JohnKomarnicki
      @JohnKomarnicki  11 місяців тому +1

      There is not. However, this page on the supabase docs should be helpful.
      supabase.com/docs/guides/getting-started/tutorials/with-nuxt-3

  • @osherezra131
    @osherezra131 11 місяців тому

    TNX

  • @YoheiKung
    @YoheiKung Рік тому

    why when i add "const client = useSupabaseAuthClient();" i keep get 500 document is not defined

    • @adydetra_
      @adydetra_ Рік тому

      same

    • @RonGeorgePile
      @RonGeorgePile Рік тому

      they dropped useSupabaseAuthClient(). Alternatively, use useSupabaseClient()

    • @Cwoissant
      @Cwoissant 11 місяців тому +1

      I guess it changed recently, replace useSupabaseAuthClient(); by useSupabaseClient(); and it should work

    • @businessoftechnology
      @businessoftechnology 10 місяців тому +1

      @@Cwoissant now it appears to be `createClient()`, lol.

  • @MrSonicastra
    @MrSonicastra 9 місяців тому

    Hmm for some reason i can't go to /register it redirect me to /login whole the time?

    • @fedvvvv
      @fedvvvv Місяць тому

      Same for me. This is the default behaviour for the supabase nuxt module. For some reason the devs thought this would be a smart idea. The only way I was able to get the register page to work is by adding this to my nuxt config:
      supabase: {
      redirectOptions: {
      exclude: ["/register"],
      },
      },
      With this, you will have to create your own nuxt middleware to handle route guarding.

  • @bombrman1994
    @bombrman1994 9 місяців тому

    the default middleware is holding me on login and i cant figure the documentations how to let the user allowed in register page

    • @intervelix7822
      @intervelix7822 9 місяців тому +3

      did you try in your nuxt config:
      supabase: {
      redirect: false,
      },

    • @JohnKomarnicki
      @JohnKomarnicki  9 місяців тому +1

      Yea. Since posting this video they changed this. The above solution should fix your issue!

  • @husseinalhilfi8186
    @husseinalhilfi8186 2 місяці тому

    It is not secure.

    • @fedvvvv
      @fedvvvv Місяць тому

      Ok. Why? Very useful comment, dude.

  • @Artison14
    @Artison14 Рік тому +1

    Thanks a lot for the help man, you saved my ass

  • @pr0viz796
    @pr0viz796 5 місяців тому +1

    when i click to register the email and password i'm getting the error: Email rate limit exceeded 429 (Too Many Requests)
    const { data, error } = await client.auth.signUp({
    email: email.value,
    password: password.value,
    });
    what i'm doing wrong?

    • @atharvasurwase6772
      @atharvasurwase6772 4 місяці тому +1

      edit suffering the same error

    • @BloodBunn
      @BloodBunn 3 місяці тому

      same problem, did you find a solution?

    • @pr0viz796
      @pr0viz796 3 місяці тому +1

      @@BloodBunn sadly i did not

    • @BloodBunn
      @BloodBunn 3 місяці тому

      @@pr0viz796 what backend do you use then? Or what auth service?

    • @pr0viz796
      @pr0viz796 3 місяці тому +1

      @@BloodBunn i didn't finish the project at all as it was a side project