Building auth from scratch takes weeks — sign up, sign in, password reset, email verification, OAuth, session management, user profiles. Auth0 and Firebase Auth work but give you ugly default UIs.
What if auth was a React component you dropped in — beautiful by default, fully customizable, free for 10,000 users?
That's Clerk.
Quick Start (Next.js)
npm install @clerk/nextjs
// middleware.ts
import { clerkMiddleware } from "@clerk/nextjs/server";
export default clerkMiddleware();
export const config = { matcher: ["/((?!.*\\..*|_next).*)", "/"] };
// app/layout.tsx
import { ClerkProvider, SignedIn, SignedOut, UserButton, SignInButton } from "@clerk/nextjs";
export default function Layout({ children }) {
return (
<ClerkProvider>
<html>
<body>
<nav>
<SignedIn>
<UserButton /> {/* Profile dropdown with avatar */}
</SignedIn>
<SignedOut>
<SignInButton /> {/* Opens sign-in modal */}
</SignedOut>
</nav>
{children}
</body>
</html>
</ClerkProvider>
);
}
That's it. Sign up, sign in, OAuth (Google, GitHub, etc.), email verification, password reset — all working. Beautiful UI out of the box.
Pre-Built Components
import { SignIn, SignUp, UserProfile, OrganizationSwitcher } from "@clerk/nextjs";
// Full sign-in page
<SignIn />
// User profile management
<UserProfile />
// Organization/team management
<OrganizationSwitcher />
Server-Side Auth
// app/api/users/route.ts
import { auth } from "@clerk/nextjs/server";
export async function GET() {
const { userId } = await auth();
if (!userId) return new Response("Unauthorized", { status: 401 });
const data = await db.users.findUnique({ where: { clerkId: userId } });
return Response.json(data);
}
Free Tier: 10,000 MAUs
- Unlimited sign-ins
- Pre-built components
- Social OAuth (Google, GitHub, Discord)
- Multi-factor authentication
- User management dashboard
Choose Clerk for fastest auth setup with beautiful UI. Choose Lucia for full control without vendor lock-in.
Start here: clerk.com
Need custom data extraction, scraping, or automation? I build tools that collect and process data at scale — 78 actors on Apify Store and 265+ open-source repos. Email me: Spinov001@gmail.com | My Apify Actors
Top comments (0)