Auth & Payments
Authentication, identity management, and payment processing. I match the provider to the project — Clerk for polished UX, Auth.js for self-hosted control, Stripe for anything involving money.
Auth.js
The default for Next.js authentication. Handles OAuth providers, sessions, and JWTs with minimal config. Free and self-hosted.
Auth0
Enterprise-grade identity management. I use it when the project needs SAML, MFA, or compliance features beyond what Auth.js covers.
Clerk
Drop-in auth with a polished UI. I choose Clerk when a project needs beautiful sign-in flows and user management without building from scratch.
Supabase
Postgres-based backend-as-a-service with built-in auth, real-time subscriptions, and storage. Great for MVPs and indie products.
Firebase
Google's BaaS. I use it for mobile-first projects that need real-time data, push notifications, and fast prototyping.
Stripe
The standard for payments. Subscriptions, one-time payments, invoicing, and marketplace splits — Stripe handles it all with clean APIs.