Gen.auth with guardian & ueberauth (using refresh tokens)

it is my first time building something in pheonix liveview. Please provide the feedback.

This repo uses

  • guadian for token management
  • ueberauth for 3rd party auth
  • phx.gen.auth for email and password based auth
  • refresh tokens

it is using most of the plugs and hooks created by gen.auth; some of those are modified to support token management. Might need better code practices as i am still new to elixir way of programming.

All the tests are working; some tests might need revision/rework.

Left some comments (tagged with TODO, TOTHINK) - where i am not sure if i took the right path or not. Also left comments where it deviated from gen.auth.

to make it work:

  • provide values for GOOGLE_GUARDIAN_CLIENT_ID, GOOGLE_GUARDIAN_SECRET_KEY in config.exs
  • change the db password in dev.exs
  • to use google auth: http://localhost:4000/auth/google
1 Like