Lucia is a simple and flexible user and session management library that provides an abstraction layer between your app and your database. It's bare-bones by design, keeping everything easy to use and understand.
Working with Lucia looks something like this. In the code below, you're creating a new user with a email/password method, creating a new session, and creating a cookie that you can set it to the user.
const user = await auth.createUser({
key: {
providerId: "email",
providerUserId: email,
password
},
attributes: {
email
}
});
const session = await auth.createSession({
userId: user.userId,
attributes: {}
});
const sessionCookie = auth.createSessionCookie(session);
npm i lucia
pnpm add lucia
yarn add lucia
This project would not have been possible without our contributors, thank you!
Logo by @dawidmachon, licensed under CC BY-NC-SA 4.0.