Add secure login and session management to your apps. SDKs available for popular languages and front-end frameworks e.g. Node.js, Go, Python, React.js, React Native, Vanilla JS, etc.
Supertokens architecture is optimized to add secure authentication for your users without compromising on user and
developer experience
Three building blocks of SuperTokens architecture
- Frontend SDK: Manages session tokens and renders login UI widgets
- Backend SDK: Provides APIs for sign-up, sign-in, signout, session refreshing, etc. Your Frontend will talk to these APIs
- SuperTokens Core: The HTTP service for the core auth logic and database operations. This service is used by the Backend SDK
- Passwordless Login
- Social Login
- Email Password Login
- Phone Password Login
- Session Management
- Multi-Factor Authentication
- Multi Tenancy / Organization Support (Enterprise SSO)
- User Roles
- Microservice Authentication
- 🚀 What is SuperTokens?
- 🏗️ Architecture
- ☕ Why Java?
- ⌨️ User Management Dashboard
- 🔥 SuperTokens vs Others
- 🛠️ Building from source
- 👥 Community
- 👩💻 Contributing
- 📝 License
If you like our project, please 🌟 this repository! For feedback, feel free to join our Discord, or create an issue on this repo
SuperTokens is an open-core alternative to proprietary login providers like Auth0 or AWS Cognito. We are different because we offer:
- Open source: SuperTokens can be used for free, forever, with no limits on the number of users.
- An on-premises deployment so that you control 100% of your user data, using your own database.
- An end-to-end solution with login, sign-ups, user and session management, without all the complexities of OAuth protocols.
- Ease of implementation and higher security.
- Extensibility: Anyone can contribute and make SuperTokens better!
Authentication directly affects the UX, dev experience, and security of any app. We believe that current solutions cannot optimize for all three "pillars", leading to many applications hand-rolling their own auth. This not only leads to security issues but is also a massive time drain.

