Skip to content

Latest commit

 

History

History
97 lines (69 loc) · 2.6 KB

File metadata and controls

97 lines (69 loc) · 2.6 KB

Contributing to Strapi + Better Auth

Thank you for your interest in contributing! This project is in early beta, so contributions of all kinds — bug reports, feature ideas, documentation improvements, and code — are especially valuable.

Getting started

Prerequisites

  • Node.js >= 22
  • pnpm >= 10

Setup

git clone https://github.com/strapi-community/plugin-better-auth.git
cd plugin-better-auth
pnpm install
pnpm build
pnpm dev

Dev commands

All dev commands start the playground Strapi app. Postgres and MySQL variants start the required Docker service automatically.

pnpm dev                  # SQLite (default)
pnpm dev:postgres         # Postgres
pnpm dev:mysql            # MySQL

See packages/dev-utils for details on dev-strapi and with-db.

Project structure

plugins/
  plugin-better-auth/           # Better Auth database adapter for Strapi
  plugin-better-auth-dashboard/ # Admin panel dashboard for Better Auth users
  plugin-api-permissions/       # Content API RBAC (roles & permissions)
packages/
  dev-utils/                    # Dev tooling: test helpers, dev server, Docker
apps/
  playground/                   # Development Strapi app
  docs/                         # Documentation site

Making changes

  1. Fork the repository and create a branch from main.
  2. Make your changes in the relevant plugin under plugins/.
  3. Add or update tests where appropriate.
  4. Run the checks below before opening a pull request.

Checks

# Linting
pnpm lint

# Type checking
pnpm lint:ts

# Integration tests
pnpm test:integration
pnpm test:integration:postgres
pnpm test:integration:mysql

# E2e tests — requires a build first
pnpm build
pnpm test:e2e
pnpm test:e2e:postgres
pnpm test:e2e:mysql

Pull requests

  • Keep pull requests focused on a single concern.
  • Describe why the change is needed, not just what it does.
  • Reference any related issues with Fixes #123 or Closes #123.
  • All checks must pass before a PR can be merged.

Reporting issues

Use the GitHub issue tracker. Please search for an existing issue before opening a new one, and include:

  • A clear description of the problem.
  • Steps to reproduce it.
  • The versions of Node.js, pnpm, and Strapi you are using.

Code style

This project uses Biome for formatting and linting. Run pnpm lint to auto-fix issues before committing.

License

By contributing, you agree that your contributions will be licensed under the MIT License.