1.0.1 • Published 5 months ago

fastify-better-auth v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
5 months ago

Fastify Better Auth

NPM
version NPM
downloads CI codecov

Fastify Better Auth is a Fastify plugin that simplifies the integration of the Better Auth library into your Fastify applications. This plugin allows you to easily register authentication routes using Better Auth, providing a seamless authentication experience.

Install

npm install fastify-better-auth

Usage

import { betterAuth } from 'better-auth';
import { drizzleAdapter } from 'better-auth/adapters/drizzle';
import FastifyBetterAuth from 'fastify-better-auth';
import fp from 'fastify-plugin';

export const auth = betterAuth({
  trustedOrigins: [env.auth.URL],
  database: drizzleAdapter(db, {
    provider: 'pg',
    usePlural: true,
  }),
  emailAndPassword: {
    enabled: true,
  },
});

async function authPlugin(fastify) {
  await fastify.register(FastifyBetterAuth, { auth });
}

export default fp(authPlugin, {
  name: 'auth-plugin',
});

You can now access the auth instance from the Fastify instance. For example if you want get the current session you can do:

const session = await fastify.auth.api.getSession({
  headers: fromNodeHeaders(req.headers),
});

License

This project is licensed under the ISC License - see the LICENSE file for details.

1.0.1

5 months ago

1.0.0

5 months ago