Commit Graph

1439 Commits

Author SHA1 Message Date
Grant G
b2ac809e5e feat(oidc-provider): add client to getAdditionalUserInfoClaim callback (#3790)
* feat: add oidc Client to getAdditionalUserInfoClaim

* address cubic comments

* run format
2025-08-11 09:58:40 -07:00
Bereket Engida
e5d2a5dbbd chore: bump biome (#3784) 2025-08-11 09:58:30 -07:00
Bereket Engida
f88e4b8dfb feat(organization): add option for requiring email verificaiton (#3785)
* feat(organization): add option for requiring email verificaiton

* add rejection

* docs: add docs
2025-08-11 09:58:01 -07:00
Alex Yang
8be5ede269 docs: remove unused import (#3927) 2025-08-11 14:12:20 +03:00
Braden Wong
f281c92b99 docs(hono): update RPC client to use init config instead of custom fetch (#3597) 2025-08-10 08:32:24 +03:00
Dagmawi Babi
5e0dace337 docs: fix google auth prompt (#3894)
Google OAuth2 uses space delimiters instead of + 

https://developers.google.com/identity/protocols/oauth2/web-server
2025-08-09 12:18:04 -07:00
Dagmawi Babi
44c407a513 chore: update api key docs (#3864)
Closes #3724
2025-08-08 09:03:34 -07:00
Nate
0fe1770404 docs: fix typo in SSR performance section
The line was missing "the".

Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
2025-08-07 19:25:57 +03:00
KinfeMichael Tariku
bb7d504efe docs: enhance trustedOrigins option with examples (#3857)
* docs: enhance trustedOrigins option documentation

* nit
2025-08-07 09:09:19 -07:00
Jovan Lanutan
236c29e270 docs: remove unused import of 'auth' type in authClient setup (#3856)
In the previous implementation, the import statement for 'auth' type from './auth' was included as part of the setup for the authClient, but it is no longer being used in the current code. This update removes the unnecessary import to clean up the code and prevent potential confusion.

Additionally, the authClient setup remains intact with the use of 'inferAdditionalFields' plugin to define additional user fields (role type set to 'string').

- Removed unused import: `import type { auth } from "./auth"`
- Kept the authClient initialization with 'inferAdditionalFields' plugin

This resolves a minor issue and ensures that the code remains clean and maintainable.
2025-08-07 19:08:40 +03:00
Hysterelius
723a4f4dde docs: update TOTP 2FA docs to state that Better-Auth implements a delay window (#3586)
Better Auth uses a delay window for TOTP code verification to ensure that it is resilient to time delays
2025-08-06 17:00:11 -07:00
dogus
b5273623bf feat(stripe): create billing portal session (#3625)
* feat(stripe) : add billing portal session endpoint

* create billing portal session

* update docs

* chore: changeset

* chore: fix stripe

* chore: remove comment

* chore: update docs

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-08-06 16:09:32 -07:00
KinfeMichael Tariku
1932d04c5a docs: unify component implementations for consistency (#3799)
* fix(docs): unify component implementations for consistency

* update
2025-08-05 17:23:03 -07:00
Alex Yang
2afdd69e95 chore(demo): replace isLoading using useTransition (#3775)
* fix: use `useTransition` for isLoading

* fixup! fix: use `useTransition` for isLoading
2025-08-04 11:11:20 -07:00
Manuel Sanchez
e37e673e04 docs: adding reference to surrealdb adapter rewrite (#3754)
Adding reference to surrealdb adapter rewrite, with passing tests and schema generation as well as surreal native parameters.
2025-08-04 11:07:44 -07:00
Bereket Engida
fbdf2b3a18 chore: update ignore build script 2025-08-01 23:14:16 -07:00
Bereket Engida
3babdbb07c docs: update session mangement caveats 2025-08-01 23:02:40 -07:00
Bereket Engida
640f165a11 chore: add check for docs build 2025-08-01 16:52:38 -07:00
Andrew Patton
a2474faac6 docs: remove nonexistent invitation.createdAt field, add missing invitation.teamId field (#3741)
* docs: remove invitation.createdAt, add invitation.teamId

* docs: add team id optionally

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-08-01 13:11:10 -07:00
Andrew Patton
91cae8aa1e docs: fix wrong cancelUrl and returnUrl descriptions (#3647)
* docs: fix wrong cancelUrl and returnUrl descriptions

* chore: changeset

* chore: update changeset

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-08-01 09:43:48 -07:00
Marti
e5f3f31311 feat(passkey): allow custom passkey name during registration (#3587)
* feat(passkey): allow custom passkey name during registration

* lint

* docs: specify name prop in passkey docs

* chore: add changeset

* chore: changeset

* chore: update changeset

* remove changest

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-08-01 09:43:35 -07:00
Saviru
884d3d5c1e docs: fix open plugins link in same tab (#3737) 2025-08-01 08:32:47 -07:00
Maxwell
3225926889 docs(org): inferOrgAdditionalFields has wrong import path (#3734)
The newly introduced `inferOrgAdditionalFields` has the wrong import path in the docs.
2025-08-01 11:20:15 +03:00
Marcel Losso Forte
89a0ad3395 docs: addd better-auth-localization to community plugins (#3727) 2025-07-31 22:39:22 -07:00
Ambuj Kumar
685f70ae3d docs: update dodopayments docs due to breaking change in the package (#3715)
since version 1.0.0, all the endpoints exposed by the
@dodopayments/better-auth adapter now include a `dodopayments` prefix to
prevent conflict with other payment related better-auth plugins.
2025-07-31 16:23:28 -07:00
KinfeMichael Tariku
0656f3ef95 chore: add sitemap (#3720) 2025-07-31 11:22:48 -07:00
Braden Wong
33b0635c4d docs(hono): clarify CORS middleware must be registered before routes (#3707)
- Add complete example showing app.on() and serve() after CORS setup
- Include important note explaining CORS must come before route registration
- Ensures consistency with middleware section and prevents user confusion
- Critical for proper cross-origin request handling in authentication endpoints
2025-07-31 00:24:22 -07:00
Maxwell
15e0e59f6d docs: remove invalid customPaths option (#3709)
Previously a merged PR had this, but that PR was revered however didn't reverse the docs for it.
2025-07-31 00:19:18 -07:00
Mikel Solabarrieta
85ef3bd198 docs: update usernameValidator example return type from bool|undefined to bool (#3702) 2025-07-30 14:21:29 -07:00
renovate[bot]
4ad0a419d3 chore(deps): update dependency next to v15.3.3 [security] (#3666)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-29 21:58:56 -07:00
Bereket Engida
e27523fd07 chore: cleanup database guide 2025-07-27 22:01:02 -07:00
Bereket Engida
de50a5a41c docs: fix typo on cookies guide 2025-07-27 22:01:02 -07:00
Bereket Engida
040092bf7c docs: fix typo 2025-07-27 21:52:59 -07:00
Bereket Engida
65fed29873 docs: improve cookie concept guide 2025-07-27 21:51:33 -07:00
KinfeMichael Tariku
a066293b35 docs: replace changelog og image (#3661) 2025-07-27 20:30:16 -07:00
Tayfun Gülcan
76cac0eaa6 docs: fix import typo in svelte kit guide (#3654) 2025-07-27 17:51:41 -07:00
Marcel Losso Forte
3afb25a780 docs: update password change instructions (#3641)
* docs: update password change instructions

* docs: add missing `requireSession` to change-password API method
2025-07-27 13:15:02 -07:00
Marcel Losso Forte
e7af3aa80c docs: typo and wrong ref for additional fields in Email & Password page (#3639) 2025-07-26 20:15:54 -07:00
Bereket Engida
8fdcf54a7b docs: fix account deletion process for OAuth users 2025-07-26 11:47:24 -07:00
Bereket Engida
8a50ac4b0c chore: improve client inference for organization additional fields (#3612)
* docs(api-key): move schema section to the bottom

* fix: shouldn't refresh a token if access token expires is undefined or null (#3577)

* fix: ensure session is added to context when reading from cookie cache (#3578)

When session data is present in the cookie, `get-session` was
early-returning without adding the session to the context, causing hooks
to receive a null session.
This change ensures the session is consistently added to the context.

* chore: export siwe in better-auth/plugins (#3596)

The docs were using this import path, yet `siwe` wasn't exported there. This PR fixes this.

* chore: fix cookies test

* fix: client inference for organization additional fields

* improve additional fields

* fix build

* fix test

---------

Co-authored-by: Gagan G <80091397+gaganref@users.noreply.github.com>
Co-authored-by: Maxwell <145994855+ping-maxwell@users.noreply.github.com>
2025-07-26 00:35:37 -07:00
Bereket Engida
847ee881d6 docs: add list member 2025-07-26 00:35:37 -07:00
Bereket Engida
518ab70495 feat(organization): add membersLimit param to allow to fetch more or less members than the membership limit (#3580)
* docs(api-key): move schema section to the bottom

* fix: shouldn't refresh a token if access token expires is undefined or null (#3577)

* fix: ensure session is added to context when reading from cookie cache (#3578)

When session data is present in the cookie, `get-session` was
early-returning without adding the session to the context, causing hooks
to receive a null session.
This change ensures the session is consistently added to the context.

* feat(organization): add membersLimit param to allow to fetch more or less members than the membership limit

* add test

* Update packages/better-auth/src/plugins/organization/adapter.ts

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: Gagan G <80091397+gaganref@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-26 00:35:37 -07:00
Maxwell
a83cf9847b feat(organization): additional fields support separate client-server projects (#3564) 2025-07-26 00:35:37 -07:00
Fraol Lemecha
ac6baba2a0 chore: add changesets (#3557)
* chore: consistent package names

* chore: init changesets

* chore: update contribution doc to include generating a changeset

* chore: configure all better auth packages to always have the same version number

* chore: update nextjs demo package name

* chore(changesets): ignore all private packages

* chore(changesets): check for changesets in CI

* chore(changesets): install chagesets cli

* chore(changesets): use orgin as main

* chore(changesets): fix typo

* chore(changesets): check for changes since main in ci

* chore(changesets): check for changes since main in ci with the correct command

* chore(changesets): check against `origin/main`

* chore(changesets): checking for changesets should be the last action

* chore(changesets): run changelog check after stoping the docker containers

* chore(changesets): run changelog check after building

* chore(changesets): run changelog check after starting docker compose

* chore(changesets): run changelog check after linting

* chore(changesets): run changelog check after testing

* Revert "chore(changesets): run changelog check after testing"

This reverts commit 6dc000f78d.

* chore: export siwe in better-auth/plugins (#3596)

The docs were using this import path, yet `siwe` wasn't exported there. This PR fixes this.

* chore: fix cookies test

* docs: make client-side vs. server-side explicit (#3603)

* docs: fix broken link to ERC-4361 in siwe docs (#3604)

* fix(jwt): ensure alg is added to the jwks when generating via /token endpoint (#3601)

* fix: Ensure alg is added to the jwks when generating via /token endpoint

* chore: resolve linting issues

* chore(example): fix SvelteKit example (#1742)

* refactor: upgrade Svelte, Vite and related packages

* refactor: replace no longer supported `body.callbackURL` with `onSuccess`

* fix: add missing `svelte-kit sync` on `prepare`

* fix: add missing `import`s

* chore(svelte-kit-example): show message & redirect to index after sign up

* chore: add npm script to migrate database

* doc: add more commands to set up

* chore: explicitly disable verification email on sign up

The example does not work if you set `sendOnSignUp: true` without setting up the email server.

* refactor(svelte-kit-example): add type for hooks

* chore(svelte-kit-example): redirect to sign in page if users open dashboard without log in

* chore: diable some rules for svelte-kit-example due to Biome's limited Svelte support

* style: fix format

* chore: update pnpm-lock.yaml

* chore: fix lock file

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>

* fix: make sveltekit plugin ALS-agnostic (#3533)

* svelte cookie

* udpate

* update

* update

* update

* chore(cli): update zod to v4 (#3618)

* fix: correct typo in freeTrial variable name in Stripe integration

* chore: fix lock file

* chore: add changeset for typo fix in freeTrial

---------

Co-authored-by: Maxwell <145994855+ping-maxwell@users.noreply.github.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Justin <127172022+jl33-ai@users.noreply.github.com>
Co-authored-by: Elliott Minns <elliott.minns@pm.me>
Co-authored-by: Jumpei Ogawa <git@phanective.org>
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
2025-07-25 20:39:44 -07:00
KinfeMichael Tariku
b5a4c3fc78 fix: make sveltekit plugin ALS-agnostic (#3533)
* svelte cookie

* udpate

* update

* update

* update
2025-07-25 15:07:28 -07:00
Fraol Lemecha
eb0207f03e docs: fix broken link to ERC-4361 in siwe docs (#3604) 2025-07-24 23:26:04 -07:00
Justin
f27a579169 docs: make client-side vs. server-side explicit (#3603) 2025-07-24 23:25:12 -07:00
Bereket Engida
c83b23c6ba docs(api-key): move schema section to the bottom 2025-07-23 21:16:22 -07:00
Khiet Tam Nguyen
e11c51e210 feat(cli): added --yes for generate/migrate, deprecated --y (#3542)
* feat(cli): added --yes option, deprecated --y, as per #1937

* feat:(cli): add deprecation warning to console if --y is used

* style(cli): linted migrate.ts & generate.ts

* docs(cli): revert 1.0 changelog
2025-07-23 09:31:06 -07:00
Bereket Engida
dea6419e09 feat(sso): support disabling setting email verified from a provider (#3551)
* feat: support disabling setting email verified

* Update docs/content/docs/plugins/sso.mdx

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* fix: update account handling in SSO to support trusted providers

* default to not setting email verified

* docs: update documentation

* add attribute map

---------

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-07-22 18:19:25 -07:00