Clerk Elements is a library of unstyled, composable components that can be used to build completely custom UIs on top of Clerk's APIs, without having to manage the underlying logic.
Warning
Clerk Elements is currently in beta. It's not recommended to use it in production just yet, but it would be much appreciated if you give it a try. If you have any feedback, please reach out to [email protected] or head over to the GitHub Discussion.
- Next.js
^13.5.4 || ^14.0.3
or later - React 18 or later
- Node.js
>=18.17.0
or later - Use the Core 2 version (or later) of Clerk's SDKs
- An existing Clerk application. Create your account for free.
The fastest way to get started with Clerk Elements is by following the Clerk Elements "Getting started" guide.
For further information, guides, and examples visit the Clerk Elements reference documentation.
The following guides will show you how to build your own custom flows:
If you want to see what's possible with Clerk Elements, check out these pre-built examples from the Clerk team:
Finally, to learn about the available components and how to use them, check out the component reference pages:
With the beta release, only sign-up and sign-in flows are supported. Support for building the rest of Clerk's prebuilt components with Elements is actively being worked on.
You can get in touch with us in any of the following ways:
- Join our official community Discord server
- On our support page
We're open to all community contributions! If you'd like to contribute in any way, please read our contribution guidelines and code of conduct.
@clerk/elements
follows good practices of security, but 100% security cannot be assured.
@clerk/elements
is provided "as is" without any warranty. Use at your own risk.
For more information and to report security issues, please refer to our security documentation.
This project is licensed under the MIT license.
See LICENSE for more information.