better-auth
The most comprehensive authentication framework
Better Auth is a TypeScript authentication framework that provides user sign-in, OAuth, two-factor authentication, multi-tenant support, and SSO out of the box, so you don't have to piece together auth from scratch.
Better Auth is a TypeScript authentication framework — meaning it handles the "who are you, and are you allowed to do this?" parts of a web application. Authentication (verifying who a user is) and authorization (deciding what they can do) are notoriously complex to build correctly, and Better Auth aims to provide a thorough, ready-to-use solution so developers don't have to piece things together from scratch.
It works with any TypeScript framework (not tied to one specific platform) and comes with a plugin system that makes it easy to add advanced features like two-factor authentication (requiring a second confirmation step to log in), multi-tenant support (separate accounts for different organizations in one app), OAuth (the "Log in with Google/GitHub" flow), and single sign-on (SSO — one login to access multiple services).
The project's motivation is straightforward: existing open-source authentication libraries for TypeScript tend to only cover basic login and require a lot of extra custom code for anything more complex. Better Auth bundles more of those features out of the box.
You would use Better Auth when building a TypeScript web app that needs user accounts, and you want a self-hosted, open-source option rather than paying for a third-party service. It is MIT-licensed (free to use and modify) and available as an npm package.
Where it fits
- Add self-hosted user authentication to a TypeScript web app without paying for a third-party auth service.
- Enable Google or GitHub OAuth login in your app using Better Auth's built-in plugin system.
- Add two-factor authentication to your app's login flow with a single plugin and minimal config.
- Build a multi-tenant SaaS app where each organization has its own isolated user accounts.