Clerk is a developer-first authentication and user management solution. It provides pre-built React components and hooks for sign-in, sign-up, user profile, and organization management. Clerk is designed to be easy to use and customize, and can be dropped into any React or Next.js application.
The user onboarding flow plays a crucial role in your application development journey, and Clerk significantly simplifies this process with built-in tooling like customizable session data, middleware in the Next.js SDK.
This repo is a working implementation of a full stack Next.js app showcasing how to leverage Clerk for your user onboarding flow and includes the following:
- Fully functional auth flow leveraging the Account Portal
- Hooks for accessing user data and authentication state
- Customized clerkMiddleware to leverage state for redirect
A hosted demo of this example is available at https://sample-onboarding-app.clerkpreview.com/
git clone https://github.com/clerk/clerk-nextjs-onboarding-sample-app
To run the example locally, you need to:
- Sign up for a Clerk account at https://clerk.com.
- Go to the Clerk dashboard and create an application.
- Set the required Clerk environment variables
pnpm install
the required dependencies.pnpm dev
to launch the development server.
Alternatively, to use npm instead of pnpm, first delete the
pnpm-lock.yaml
file and runnpm install
andnpm run dev
To learn more about Clerk and Next.js, check out the following resources:
If you have found an issue with our documentation, please create an issue.
If it's a quick fix, such as a misspelled word or a broken link, feel free to skip creating an issue. Go ahead and create a pull request with the solution. ๐
You can discuss ideas, ask questions, and meet others from the community in our Discord.
If you prefer, you can also find support through our Twitter, or you can email us!