Get Started
This guide walks you through building a complete sign-up and sign-in flow using Better Auth.
Create the Auth Client
First, create a client-side auth helper:
import { createAuthClient } from "better-auth/client";
export const authClient = createAuthClient({
baseURL: "http://localhost:3000",
});Sign Up
Create a sign-up form that calls the auth client:
const { data, error } = await authClient.signUp.email({
email: "user@example.com",
password: "securePassword123",
name: "John Doe",
});
if (error) {
console.error("Sign-up failed:", error.message);
} else {
console.log("User created:", data.user);
}Sign In
After registration, users can sign in:
const { data, error } = await authClient.signIn.email({
email: "user@example.com",
password: "securePassword123",
});
if (data) {
console.log("Signed in:", data.session);
}Get Current Session
Check the current user's session:
const session = await authClient.getSession();
if (session) {
console.log("Current user:", session.user.name);
} else {
console.log("Not authenticated");
}Sign Out
await authClient.signOut();Next Steps
- Learn about Session Management
- Set up a Database