goth

Package goth provides a simple, clean, and idiomatic way to write authentication packages for Go web applications. (by markbates)

Goth Alternatives

Similar projects and alternatives to goth

  1. htmx

    640 goth VS htmx

    </> htmx - high power tools for HTML

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. stable-diffusion

    387 goth VS stable-diffusion

    A latent text-to-image diffusion model

  4. Nim

    356 goth VS Nim

    Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).

  5. pocketbase

    Open Source realtime backend in 1 file

  6. sqlc

    181 goth VS sqlc

    Generate type-safe code from SQL

  7. authentik

    175 goth VS authentik

    The authentication glue you need.

  8. Rocket

    162 goth VS Rocket

    A web framework for Rust.

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. qwik

    142 goth VS qwik

    Instant-loading web apps, without effort

  11. oauth2-proxy

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

  12. zitadel

    89 goth VS zitadel

    ZITADEL - The best of Auth0 and Keycloak combined. Built for the serverless era.

  13. tools

    46 goth VS tools

    Discontinued Unified developer tools for JavaScript, TypeScript, and the web

  14. dex

    39 goth VS dex

    OpenID Connect (OIDC) identity and OAuth 2.0 provider with pluggable connectors

  15. napi-rs

    38 goth VS napi-rs

    A framework for building compiled Node.js add-ons in Rust via Node-API

  16. clace

    28 goth VS clace

    App deployment simplified. GitOps without the hassles. Hypermedia based internal tools for teams. AppServer for containerized apps.

  17. starlark-go

    Starlark in Go: the Starlark configuration language, implemented in Go

  18. caddy-security

    🔐 Authentication, Authorization, and Accounting (AAA) App and Plugin for Caddy v2. 💎 Implements Form-Based, Basic, Local, LDAP, OpenID Connect, OAuth 2.0 (Github, Google, Facebook, Okta, etc.), SAML Authentication. MFA/2FA with App Authenticators and Yubico. 💎 Authorization with JWT/PASETO tokens. 🔐

  19. langs-in-rust

    A list of programming languages implemented in Rust, for inspiration.

  20. oauth2

    8 goth VS oauth2

    Go OAuth2

  21. authboss

    2 goth VS authboss

    The boss of http auth.

  22. go-oauth2-server

    A standalone, specification-compliant, OAuth2 server written in Golang.

  23. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better goth alternative or higher similarity.

goth discussion

Log in or Post with

goth reviews and mentions

Posts with mentions or reviews of goth. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-09-11.
  • Show HN: Clace – Application Server with support for scaling down to zero
    7 projects | news.ycombinator.com | 11 Sep 2024
    Thanks, need to make the docs less verbose in some places :-)

    https://clace.io/docs/configuration/authentication/ lists the supported auth mechanisms for apps. A builtin system account is the default. The OAuth providers supported are : github google digitalocean bitbucket amazon azuread microsoftonline gitlab auth0 okta oidc. Any other provider supported by https://github.com/markbates/goth can be easily added, with a small code change.

    For admin operations (creating/updating apps) using the client CLI, a unix domain socket is used. File system permissions are used, no other auth is used for UDS. A REST API for admin operations can be optionally enabled, in which case it will use the system account https://clace.io/docs/configuration/security/#admin-api-acce....

    Client cert based auth is not supported currently. Were you wanting that for app access or for admin API access?

    In terms of performance, I did some testing few months back. The app access API does not hit the database (sqlite), everything is cached after the first call. So the performance will be limited by the API performance of the downstream container. The Clace server itself should not be a bottleneck. First API call to a containerized app builds the image and starts the container. That depends on how fast the image build and container startup are.

  • How to build Auth in 2023 with go?
    6 projects | /r/golang | 31 May 2023
    Also really easy to implement as there are libraries that do all the heavy lifting for you (https://github.com/markbates/goth is a great starting place IMHO)
  • Why use a 'global' anonymous function instead of a named one?
    1 project | /r/golang | 14 Mar 2023
    In the package 'markbates/goth' that provides a client implementation of OAuth 2.0, the authors have defined the function CompleteUserAuth at the package level like this:
  • Authentication in Go? Best practices
    4 projects | /r/golang | 7 Mar 2023
  • Single sign on with LinkedIn
    1 project | /r/golang | 4 Dec 2022
    You can use oauth2. Just take e.g. a look at the dex documentation dex. Dex is not a library but a standalone federated oidc provider. Highly recommended. For libraries take a look at goth.
  • Simple web app, how to do auth?
    11 projects | /r/golang | 2 Nov 2022
  • The impossible case of pitching rust in a web dev shop
    11 projects | /r/programming | 22 Sep 2022
    For the kind of websites I prefer to build -- server side rendered with HTMX/Alpine for the extra niceness -- Rust I think could be a very good fit. The main downside for my personal projects is the ecosystem. E.g., a good standard way to handle CSRF tokens, standardised oauth2 implementations (like https://github.com/markbates/goth in Go), things like that. I found myself having to write a lot of code that just exists in the Go ecosystem. The main downside for a business is that it's going to make it harder to hire, since Rust genuinely requires more skill. Yes, developers will make mistakes in Go, as it's far too easy to do things like access shared memory in dangerous ways. But on the flip side, it's a lot easier for them to deliver a feature. In a choice between shipping a feature that is buggy in hard to detect ways, vs not being able to deliver at all because you can't get developers, I think it's better to ship.
  • เขียน Go ต่อ Oauth ทุกค่าย
    1 project | dev.to | 2 Nov 2021
  • A note from our sponsor - CodeRabbit
    coderabbit.ai | 23 Mar 2025
    Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR. Learn more →

Stats

Basic goth repo stats
8
5,859
5.9
8 days ago

markbates/goth is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of goth is Go.


Sponsored
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai

Did you know that Go is
the 4th most popular programming language
based on number of references?