Universal
You can use it to auth through your web app, mobile app, SSR app, single-page-app, third party clients, and anything else.
It can run as a standalone service or you can embed it into an existing application.
Self-hosted
It can run on Node.js, Bun, Lambda, or Workers. It needs minimal infrastructure to run and simple to self-host.
Standards-based
It implements the OAuth 2.0 spec, so any OAuth client can use it. And it's based on web standards.
Customizable
It comes with prebuilt themeable UIs that area really easy to customize. But you can also completely opt of it and implement your own UI.
Why build OpenAuth
We built OpenAuth as a separate project because a universal, standards-based auth provider is something that should exist outside of SST.
And most of the existing solutions were either libraries, or SaaS services that held your user data. While the standalone self-hosted ones were just too complicated to set up.
Using it in SST
You can use OpenAuth in SST with the new SST Auth component.
```
new Auth("MyAuth", {
domain: "
auth.myapp.com",
authorizer: "src/auth.handler"
});
```
What's next
OpenAuth and the new Auth component are in beta. Over the next few weeks we’ll be adding more docs, examples, and tutorials, as we finalize the API.