Welcome to DeAuth.xyz, a revolutionary drop-in OAuth provider built atop the Solana blockchain. Our solution is crafted meticulously for developers who wish to seamlessly integrate web3 authentication into their applications, without diving deep into the intricacies of Solana message signing or ledger support.
- Multi-Tenancy: Support for multiple tenants, ensuring data isolation among different users and applications (Or not, it's your choice).

- Role and User Permission Management: Granular control over user roles and permissions, allowing for intricate access controls tailored to your application's needs.
.

- User Impersonation: Admins can impersonate users, aiding in debugging or support.
- Advanced Logging: Comprehensive logs to monitor authentication actions and user activities.
- Branded Login Page: Customize the login page to resonate with your brand, ensuring a coherent user experience.

- NFT Avatars: Let your users showcase their unique NFT avatars during authentication.

- Security: Our platform mitigates the burden of ensuring secure Solana message signing.
- SDK Support: We offer SDKs for Plain JS/TS at the moment, the rest of the major frameworks will follow soon.
- Drop-In Auth Components Coming soon for React, Next.JS, Sveltekit, Vue, etc... (Pending need assessment)
-
Sign up via https://www.deauth.xyz
-
Create an organization
-
Create an application
-
Obtain your application's Acesss/Refresh Token, You can use these to verify the session's credentials anytime

-
Install the SDK
npm install @deauth/sdk-universal
-
Configuration
import DeAuth from '@deauth/sdk-universal' export const deAuth = new DeAuth( '975a0a2a-b760-43a1-a42c-32d6c297cba8' //App ID 'http://127.0.0.1', //Redirect URI '****************************************', //Access Token '****************************************', //Refresh Token
Catch the callback.
const authorization_url = await deAuth.redirectToOAuth({ fetchInstance: fetch })``` Validate Session anytime. ```ts const session = await deAuth.handleRedirect({ proof: proof})
Get User info
const session = await deAuth.getSessionUser({ session_id: 'Get From Cookie'})
-
Manage Your Users/Sessions/Permissions Log into your deauth dashboard, you can find all your application's settings in there!

Dive deeper into our features and functionalities by visiting our detailed documentation.
Visit our examples repository to see how DeAuth.xyz can be integrated into various platforms and applications.
- Implement JWT Auth for no-backend apps.
- Build SDKs for other frameworks.
- Build Web3 Subscription-Management into the platform.
- Build drop-in Auth Components for major frameworks.
Developed with ❤️ Bewinxed bewinxed, Twitter for updates and support.
