agentsclimarketplace

Authentication logic

Skill aiskillstore/marketplace/skills/abdulsamad94/authentication-logic

Guide to using Better Auth for client and server-side authentication.From its SKILL.md

Install
npx -y skills add aiskillstore/marketplace --skill authentication-logic

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

1.2 KB, 274 tokens by cl100k_base, as published. Nobody here has run it

Authentication Logic

Overview

We use Better Auth (better-auth) for identifying users.

Config

  • Client: lib/auth-client.ts exports authClient.
  • Server: lib/auth.ts exports auth.

Client-Side Usage

Use authClient for signing in, signing out, and checking session state in Client Components.

import { authClient } from "@/lib/auth-client";

// Sign In
await authClient.signIn.email({
  email,
  password,
});

// Social Sign In
await authClient.signIn.social({
  provider: "google",
  callbackURL: "/onboarding", 
});

// Sign Out
await authClient.signOut();

Server-Side Usage

Use auth.api.getSession for protecting API routes or Server Actions.

import { auth } from "@/lib/auth";
import { headers } from "next/headers";

const session = await auth.api.getSession({
  headers: await headers()
});

if (!session) {
  return new Response("Unauthorized", { status: 401 });
}

AuthBar Component

  • Located at textbook/src/components/AuthBar/index.tsx.
  • Displays user avatar or login button.
  • Fetches session from /api/auth/session (Next.js API route proxying Better Auth).

What ships with it: 1 file

15.4 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.