@hedystia/better-auth-typeorm
v0.4.4
Published
<div align="center"> <p> <strong>๐ฆ @hedystia/better-auth-typeorm</strong> </p>
Maintainers
Readme
๐ Features
- ๐๏ธ Database Agnostic: Works with all TypeORM-supported databases (MySQL, PostgreSQL, SQLite, etc.)
- ๐ CRUD Operations: Full support for create, read, update, and delete operations
- โก Efficient Queries: Built-in pagination, sorting, and filtering support
- ๐ Secure Operations: Proper transaction handling and error management
๐ Quick Start
- Install the package:
npm install @hedystia/better-auth-typeorm typeorm- Generate TypeORM Entities and Migrations
Before you can use the adapter, you need to generate the necessary entities and migrations for your database. You can do this using the Better Auth CLI:
bunx @better-auth/cli generate
# or
npx @better-auth/cli generateThis command will create the typeorm/entities and typeorm/migrations directories in your project.
- Create your TypeORM DataSource configuration:
import { DataSource } from "typeorm";
import path from "path";
export const dataSource = new DataSource({
type: "mysql",
host: "localhost",
port: 3306,
username: "your_username",
password: "your_password",
database: "your_database",
entities: [path.join(__dirname, "typeorm/entities/**/*.ts")],
migrations: [path.join(__dirname, "typeorm/migrations/**/*.ts")],
migrationsRun: true,
});
await dataSource.initialize();- Set up your Better Auth configuration:
import { betterAuth } from "better-auth";
import { typeormAdapter } from "@hedystia/better-auth-typeorm";
import { organization, twoFactor } from "better-auth/plugins";
import { dataSource } from "./data-source";
export const auth = betterAuth({
database: typeormAdapter(dataSource),
plugins: [organization(), twoFactor()],
});๐ Why use this adapter?
- Seamless Integration: Direct mapping between Better Auth entities and TypeORM
- Flexible Database Support: Use with any TypeORM-supported database
- Production Ready: Built-in error handling and transaction support
- Performance Optimized: Efficient query building and data transformation
๐ License
This project is licensed under the MIT License.
