gotrue VS dex

Compare gotrue vs dex and see what are their differences.

gotrue

An SWT based API for managing users and issuing SWT tokens. (by netlify)

dex

OpenID Connect (OIDC) identity and OAuth 2.0 provider with pluggable connectors (by dexidp)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
gotrue dex
22 37
3,722 9,041
1.0% 1.3%
3.6 9.4
5 months ago 7 days ago
Go Go
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

gotrue

Posts with mentions or reviews of gotrue. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-14.
  • Supabase Auth: Identity Linking, Hooks, and HaveIBeenPwned integration
    3 projects | dev.to | 14 Dec 2023
    If you’ve been following us from the start, you will know that Supabase Auth started by forking Netlify’s GoTrue server. A lot has changed since then and we’ve diverged from the upstream repository. At this stage it makes sense to rename the project to something else (cues drumroll) — Auth.
  • FATA[0000] Error 1130: Host '172.17.0.1' is not allowed to connect to this MySQL server
    1 project | /r/AskProgramming | 19 May 2023
    I am testing gotrue netlift module https://github.com/netlify/gotrue
  • Netlify Gotrue – SWT based API for managing users and issuing SWT tokens
    1 project | news.ycombinator.com | 11 May 2023
    1 project | news.ycombinator.com | 2 May 2023
  • gotrxx VS gotrue - a user suggested alternative
    2 projects | 11 Mar 2023
    I guess since it's a deviation of it
  • GoTrue is a small open-source API written in Golang
    1 project | news.ycombinator.com | 8 Dec 2022
  • Ask HN: Ok to only allow Google/Apple/FB login for mobile app?
    1 project | news.ycombinator.com | 29 Aug 2022
    To answer point 1: Maybe to start out, but in the long run, having only social logins may cause your app to lose a segment of the market (I don't know how much). If you're fine with that, then by all means only support social logins.

    However, I strongly suggest having it (or some way for someone not to use a social provider) if you want to have as many users a possible.

    Personally, I don't have a google account, I'm wary to use my Apple account for non-Apple sites, and I don't have facebook, instagram, new gen z hotness app, etc... And I can confidently say I am not alone in choosing to use apps which don't require a social login.

    At the end of the day though, password auth isn't a non-trivial problem. It is a solved problem of which there are numerous articles/papers and many libraries for most languages/frameworks. For example, the Phoenix framework for Elixir has a built in command which scaffolds auth, and it works really well (I have used it in a personal project): https://hexdocs.pm/phoenix/mix_phx_gen_auth.html. For JS, you can use something like passport: https://www.passportjs.org/packages/passport-local/. If you want a separate service entirely (even though it would be more complex to have a separate service to start out), there is GoTrue: https://github.com/netlify/gotrue. These are just a few suggestions of tech I have come across. There is so much more out there, I encourage you to research options to see what may be a best fit.

    If you're worried about password auth, maybe give one time passwords a try. They don't require any password reset flow, and are generally secure when implemented correctly. As an example, I don't have a password for my craigslist account. Every time I want to login, I can choose to get a magic link/otp which gets exchanged for a session. In practice (and this is my personal opinion), I prefer magic links. They are one time, hard to guess (again dependent on implementation), can be time limited, and most likely won't be intercepted in transit (though it could be in a rare circumstance).

    To answer point 2: yes.

    If your app is to order things (I use things in a general term) it sounds like eCommerce. And if you're in eCommerce, you better have a way for a user to track what they have ordered and how much they have paid for it at a minimum. Otherwise, your site may come across as a scam, even though it uses Stripe. Sketchy sites can use Stripe to get your money (albeit, it'll be a one time payment).

    In conclusion, auth for your application seems crucial. Email/password auth is still relevant for applications. While not necessary for an MVP, there is a segment of the market you will lose if you don't have an email/password option, or even an email/OTP/magic link option (I don't know how much, really going off an educated guess).

    Best of wishes in building your app! I genuinely hope it is successful and safe for people to leverage :)

  • I got tired of fussing with auth, so I built a thing for building OAuth login in under 60 seconds.
    4 projects | /r/programming | 1 Jul 2022
    Use a self-hostable auth microservice like gotrue or authelia, ORY's suite of products, etc.
  • what should I do about authentication in golang?
    4 projects | /r/golang | 21 Jun 2022
  • actix-session 0.6.0 is out - an almost complete rewrite!
    1 project | /r/rust | 15 Mar 2022
    Any examples for implementation like https://github.com/netlify/gotrue for Actix-web?

dex

Posts with mentions or reviews of dex. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-28.
  • Navigating Identity Authentication: From LDAP to Modern Protocols
    2 projects | dev.to | 28 Mar 2024
    Dex: https://dexidp.io
  • Keycloak SSO with Docker Compose and Nginx
    21 projects | news.ycombinator.com | 11 Feb 2024
    Recently I looked into having a relatively simple SSO setup for my homelab. My main objective is that I could easily login with Google or GitHub auth. At my previous job I used both JetBrains Hub [1] and Keycloak but I found both of them a bit of a PITA to setup.

    JetBrains Hub was really, really easy to get going. As was my previous experience with them. The only thing that annoyed me was the lack of a latest tag on their Docker registry. Don't get me wrong, pinned versions are great, but for my personal use I mostly just want to update all my Docker containers in one go.

    On the other hand I found Keycloak very cumbersome to get going. It was pretty easy in dev mode, but I stumbled to get it going in production. AFAIK it had something to do with the wildcard Let's Encrypt cert that I tried to use. But after a couple of hours, I just gave up.

    I finally went with Dex [2]. I had previously put it off because of the lack of documentation, but in the end it was extremely easy to setup. It just required some basic YAML, a SQLite database and a (sub)domain. I combined Dex with the excellent OAuth2 Proxy and a custom Nginx (Proxy Manager) template for an easy two line SSO configuration on all of my internal services.

    In addition to this setup, I also added Cloudflare Access and WAF outside of my home to add some security. I only want to add some CrowdSec to get a little more insights.

    1. https://www.jetbrains.com/hub/

    2. https://dexidp.io/

    3. https://github.com/oauth2-proxy/oauth2-proxy

    3. https://github.com/alex3305/unraid-docker-templates

  • Sign in with GitHub in Go
    1 project | /r/golang | 10 Dec 2023
    Another great option is to use https://github.com/dexidp/dex in an authentication setup. In your app, you federate the authentication to dex using OAuth2. Dex then has a pluggable architecture with built-in connectors for many established identity providers using a variety of protocols: Among others OAuth2, SAML 2 but also GitHub, Google, Gitea and so forth.
  • Show HN: Obligator – An OpenID Connect server for self-hosters
    18 projects | news.ycombinator.com | 11 Oct 2023
  • I made a small program that makes it easier to run commands inside containers
    4 projects | /r/docker | 20 Jun 2023
    dex is well-known: https://github.com/dexidp/dex
  • Keycloak – Open-Source Identity and Access Management Interview
    26 projects | news.ycombinator.com | 18 Jun 2023
    We used keycloak for openid identity provider as well. It is fine to setup keycloak once. But it is painful share the setup with other engineers.

    For local development, we end up using dex (https://dexidp.io). When we need support group/role, we use dex and glauth(https://glauth.github.io). Both dex and glauth can be configured with yaml files. We just created a few yaml files and a docker compose file, every engineer can be brought up the whole environment in a few seconds.

    Also https://www.authelia.com and https://github.com/goauthentik/authentik look pretty promising, if you need more advanced features from them.

  • dex VS boruta-server - a user suggested alternative
    2 projects | 22 May 2023
  • Have you convinced anyone to use Nix or NixOS? Friends? Coworkers?
    5 projects | /r/NixOS | 16 Apr 2023
    I added it as an available option (flake) in Dex: https://github.com/dexidp/dex
  • Okta Access Gateway Alternatives
    2 projects | /r/sysadmin | 28 Mar 2023
  • Is there a good example of an open source non-trivial (DB connection, authentication, authorization, data validation, tests, etc...) Go API?
    14 projects | /r/golang | 25 Jan 2023

What are some alternatives?

When comparing gotrue and dex you can also consider the following projects:

supabase - The open source Firebase alternative.

Keycloak - Open Source Identity and Access Management For Modern Applications and Services

postgrest - REST API for any Postgres database

authelia - The Single Sign-On Multi-Factor portal for web apps

Ory Hydra - OpenID Certified™ OpenID Connect and OAuth Provider written in Go - cloud native, security-first, open source API security for your infrastructure. SDKs for any language. Works with Hardware Security Modules. Compatible with MITREid.

hasura_gotrue - This is a slightly extended version of Netlify's GoTrue. It includes a `docker-compose.yaml` file to deploy it together with Hasura. This set up uses two databases, PostgreSQL for Hasura and MariaDB for GoTrue. Have fun!

OpenUnison - Unified Identity Management

nextjs-supabase-auth - Sample project for setting up Supabase Auth in Next.js

oauth2-proxy - A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.

supabase-auth-react

caddy-auth-portal - Authentication Plugin for Caddy v2 implementing Form-Based, Basic, Local, LDAP, OpenID Connect, OAuth 2.0 (Github, Google, Facebook, Okta, etc.), SAML Authentication. MFA with App Authenticators and Yubico.