Module @tailor-platform/auth

This package provides ways to handle Tailor authentication

Getting Started

The example steps below describes how to add authentication with Tailor Platform to your app.

Install

npm install --save @tailor-platform/auth

Configuration

Create your own instance of Config.

import { Config } from "@tailor-platform/auth/core";

export const config = new Config({
apiHost: "http://yourapp.mini.tailor.tech:8000",
appHost: "http://localhost:3000",
});

Add Next.js middleware

Use withAuth to add Next.js middleware with your configuration.

import { withAuth } from "@tailor-platform/auth/server";
import { config as authConfig } from "@/libs/authConfig";

const middleware = withAuth(authConfig);

export default middleware;

Mount React provider

Use client.TailorAuthProvider to authentication on client components.

import { TailorAuthProvider } from "@tailor-platform/auth/client";
import { config } from "@/libs/authConfig";

export const Providers = ({ children }: { children: ReactNode }) => (
<TailorAuthProvider config={config}>{children}</TailorAuthProvider>
);

Authenticate

Use useAuth hook to initiate the authentication.

"use client";
import { useAuth } from "@tailor-platform/auth/client";

const Component = async () => {
const { login } = useAuth();
const doLogin = useCallback(() => {
login({
name: "saml", // strategy name
options: {
redirectPath: "/dashboard",
},
});
}, [login]);

return (
<div>
<button onClick={doLogin}>Login</button>
</div>
);
};

More

This package has still more functionalities.

Server

A set of functionss for server components (getServerSession) are also available.

Integration with apollo-client

A custom ApolloLink is available. See @tailor-platform/auth-apollo for more information.

Customization

Pluggable authentication adapters are supported. See AbstractStrategy for more information.

Index

Modules

Generated using TypeDoc