Which UI do you use? Pre built UI
Pre built UI
Custom UI
Share sessions across sub domains
Sharing sessions across multiple sub domains in SuperTokens can be configured by setting the sessionTokenFrontendDomain attribute of the Session recipe in your frontend code.
Example:
- Your app has two subdomains abc.example.comandxyz.example.com. We assume that the user logs in viaexample.com
- To enable sharing sessions across example.com,abc.example.comandxyz.example.comthesessionTokenFrontendDomainattribute must be set to.example.com
- ReactJS
- Angular
- Vue
Important
SuperTokens does not provide non-React UI components. So we will be using the 
supertokens-auth-react SDK and will inject the React components to show the UI. Therefore, the code snippet below refers to the supertokens-auth-react SDK.import SuperTokens from "supertokens-auth-react";
import Session from "supertokens-auth-react/recipe/session";
SuperTokens.init({
    appInfo: {
        // ...
        // this should be equal to the domain where the user will see the login UI
        apiDomain: "...",
        appName: "...",
        websiteDomain: "https://example.com"
    },
    recipeList: [
        Session.init({
            sessionTokenFrontendDomain: ".example.com"
        })
    ]
});
Important
SuperTokens does not provide non-React UI components. So we will be using the 
supertokens-auth-react SDK and will inject the React components to show the UI. Therefore, the code snippet below refers to the supertokens-auth-react SDK.import SuperTokens from "supertokens-auth-react";
import Session from "supertokens-auth-react/recipe/session";
SuperTokens.init({
    appInfo: {
        // ...
        // this should be equal to the domain where the user will see the login UI
        apiDomain: "...",
        appName: "...",
        websiteDomain: "https://example.com"
    },
    recipeList: [
        Session.init({
            sessionTokenFrontendDomain: ".example.com"
        })
    ]
});
import SuperTokens from "supertokens-auth-react";
import Session from "supertokens-auth-react/recipe/session";
SuperTokens.init({
    appInfo: {
        // ...
        // this should be equal to the domain where the user will see the login UI
        apiDomain: "...",
        appName: "...",
        websiteDomain: "https://example.com"
    },
    recipeList: [
        Session.init({
            sessionTokenFrontendDomain: ".example.com"
        })
    ]
});
caution
Do not set sessionTokenFrontendDomain to a value that's in the public suffix list (Search for your value without the leading dot). Otherwise session management will not work.