Commit Graph

148 Commits

Author SHA1 Message Date
Shobhit Patra
02752a4dbc feat(cognito): add amazon cognito provider (#4229) 2025-08-29 11:07:03 -07:00
Taesu
bd075e37e2 feat(social): add Kakao, Naver provider (#3287) 2025-08-28 10:39:59 -07:00
Shobhit Patra
da9fcbde85 feat(salesforce): add salesforce provider (#4183)
Co-authored-by: Alex Yang <himself65@outlook.com>
2025-08-26 10:27:31 -07:00
Shobhit Patra
e1552bebee feat(atlassian): add atlassian social provider (#4221) 2025-08-25 16:43:39 -07:00
Maxwell
2b2671423c docs: fix facebook icon color 2025-08-25 08:09:29 +10:00
Maxwell
51a6a8c9b6 docs: fix kick icon 2025-08-25 07:53:41 +10:00
Maxwell
868872ad21 docs: fix figma icon 2025-08-25 06:18:09 +10:00
Maxwell
6d50f40f0b docs: fix new social provider sidebar items 2025-08-24 02:32:10 +10:00
Fuma Nama
d20f9a763c chore: update to Fumadocs 15.7 (#4154)
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-08-22 19:00:45 -07:00
Lawrence Lin
28211e5e97 feat(social): add Line provider (#4084) 2025-08-22 15:57:36 -07:00
Shobhit Patra
d476fbed07 feat: add figma provider (#4134)
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
2025-08-22 14:31:04 -07:00
Alex Yang
5ded0904d4 feat: support device authorization (#3811) 2025-08-21 14:59:31 -07:00
Shobhit Patra
96b5fabdfa feat(paypal): add paypal OAuth2 provider (#4107) 2025-08-21 11:50:03 -07:00
Alex Yang
da52400a51 docs: fix typos (#4069) 2025-08-18 10:50:00 -07:00
Fraol Lemecha
2915e4c92d feat: add telemetry (#3822)
* feat: telemetry

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>

* chore: remove changeset

* fix: do not generate project id unless telemetry is enabled

* fix: return `isInsiderContainerCached`

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

* chore: remove unused utils file

* fix: properly cache generated project id

* feat: interpret empty env vars as false

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

* fix: use nullish coalescing to set fallback

* fix: should be `isInsideContainerCached`

* fix: unique icons + tooltip for telemetry component

* fix: import child process from node

* fix: remove quotes in description

Co-authored-by: Alex Yang <himself65@outlook.com>

* fix: address reviews

Co-authored-by: Alex Yang <himself65@outlook.com>

* chore: refactor

* refactor

* add tests

* cache pkg json

* add cli tracking

* add migrate

* chore fix xi

* skip tet

* update snapshot

* chore: fix typecheck

* Expand telemetry docs: list collected fields, clarify anonymous redaction via getTelemetryAuthConfig, and document CLI events and audit/opt‑out paths.

* docs

* doc cleanup

* fixes

* remove git first commit message

* update docs

---------

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Alex Yang <himself65@outlook.com>
Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-08-10 01:11:56 -07:00
Ayush Agarwal
23f142e4b6 docs: added dodo payments plugin (#3468)
* docs: added dodo payments better auth adapter docs

* cleanup

* cleanup

* cleanup

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-21 19:54:04 -07:00
Maxwell
9d9798abf1 docs: remove old new tags (#3482) 2025-07-19 15:22:08 -07:00
rokitg
370e8515e5 feat: SIWE plugin (#2579)
* feat: first draft of SIWE plugin

* fix: run biome linter

* refactor(siwe): rename publicKey to walletAddress for clarity

 - Add ensName as an optional param from the client
 - Add emailDomainName to plugin options - fallback to getOrigin()
- Move schema to a separate file

* fix(siwe): update emailDomainName assignment to use nullish coalescing operator

* run biome linter

* fix(siwe): avatar field is not included in createUser call

* refactor(siwe): remove siwe dependency and implement nonce generation and message verification through plugin options

- Removed direct dependency on 'siwe' package.
- Introduced 'generateSiweNonce' and 'verifySiweMessage' as user functions
- Updated tests to reflect changes in nonce handling and message verification logic (WIP)

* feat: add anonymous flag to plugin options

* refactor(siwe): improve test coverage - anonymous flag, missing nonce & other edge cases

* feat(siwe): add checksum address validation using keccak256 + test case

* fix(siwe): refactor hashing utility to use @noble/hashes

* feat(siwe): enhance SIWE plugin with chainId support, strong typing, dedicated table for wallet adresses and more test coverage

* refactor(siwe): remove unused SIWE interfaces

* fix(siwe): PR review issues

* fix(siwe): rename const "siweClientPlugin" to "siweClient" for simplicity

* feat(siwe): add docs

* chore: fix lock file

* fix: account linking & code formatting

* run pnpm lint

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-18 19:21:55 -07:00
Bereket Engida
56bd676534 Merge branch 'main' into v1.3 2025-07-17 10:08:46 -07:00
Thalles Passos
a16ea81db4 docs: add community maintained nestjs library (#3391) 2025-07-17 00:39:38 -07:00
Ephraim Duncan
843482fe4a feat: add slack social provider (#3315)
* feat: add slack provider

* feat: add slack provider docs

* chore:lint

* chore:lint

* docs: add is new flag

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-07-10 11:11:34 -07:00
Bereket Engida
ed8fbb890f Merge remote-tracking branch 'origin/main' into v1.3 2025-07-10 10:12:11 -07:00
Ayush
816003b655 docs: add autumn billing plugin (#3331)
* docs: add Autumn Billing plugin

* use stepper for setup and cleanups

* add autumn's discord

* chore:lint

---------

Co-authored-by: Bereket Engida <Bekacru@gmail.com>
2025-07-10 09:19:27 -07:00
Ephraim Duncan
0bff4af96b feat: notion provider (#3068)
* feat: add notion provider

* chore: lint

* chore: add docs for notion provider

---------

Co-authored-by: Bereket Engida <86073083+Bekacru@users.noreply.github.com>
2025-07-07 18:53:52 -07:00
Jed Patterson
6e291382fe feat: linear social provider (#2617)
* feature: linear oauth

* update profile map

* remove props spread from stringIcon

* update icon svg props

* updates

* update

---------

Co-authored-by: Kinfe123 <kinfishtech@gmail.com>
2025-07-03 11:36:18 -07:00
Bereket Engida
a6a66d9c7e feat: SSO plugin with OIDC and SAML support (#3185)
* fix(email-verification): improve email verification logic to check session and user email consistency (#3042)

* docs(passkey): Fixed signIn passkey props (#3014)

callbackURL doesn't exist.

* fix(email-otp): auto-verify on email otp reset (#3022)

* fix: delete user should respect freshAge config (#3075)

* fix: delete user needs to enforced through fresh age

* cleanup

* cleanup

* chore(org): add comments explaining what shimContext does (#3098)

* feat: Allow passing `id` in DB hook `create` (#3048)

* feat(database-hooks): Allow passing `id` in DB hook `create`

It's the same to using a custom `idGenerator`, except configurable by the database hook which would in theory provide more data.

A use-case is to generate the id based on user info in the user before DB hook.

Solves https://discord.com/channels/1288403910284935179/1379190465588367540/1384217435535835216

* chore: lint

* fix: tests failing

* docs: basic errs with svg props (#3102)

* docs: corrected github user email scope name (#3099)

* docs: corrected github user email scope name

* docs: cubic dev suggestion

* fix: use correct refresh token endpoint for github (#3095)

* chore: fix typo in authorize comment (#3106)

* docs: fix session parameter spelling (#3108)

* docs: input field usage on additional fields (#2991)

* fix: onLinkAccount trigger on phone number verification (#3007)

* fix: expose headers override in jwt plugin (#3019)

* expose headers override in jwt plugin

* clean up

* lint

* fix(expo): remove duplicated trusted origins

* feat: link account with idToken  (#1830)

* add idToken to link account

* add docs

* Implemented linking accounts based on idToken

* fix: tests

* docs: prevent diff

* docs: prevent diff

---------

Co-authored-by: kzlar <120426485+kzlar@users.noreply.github.com>

* feat: add Hugging Face provider (#3089)

* feat: add huggingface provider

* Add hugging face to doc

* chore: update hugging face logo

* chore: release v1.2.10

* docs: fix builder failing to open

* docs(NextJS): Improve middleware example to be more secure (#3135)

* docs(NextJS): Improve middleware example to be more secure

Users can skim code without reading the text, and LLMs can read code and miss-understand context correctly.  Our current middleware example only checks for existence of a cookie, and doesn't validate it.

While we do warn users this isn't secure, some users has raised concern in a Github issue saying it's not obvious enough for users who skim.

Also we don't provide examples on how to authenticate users on each route, we only show middleware optimistic check examples.

* Update docs/content/docs/integrations/next.mdx

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

---------

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

* fix(username): log the correct username (#3127)

* docs: fix typo in plugin (#3122)

* typo

* typo

* typo

* typo

* typo

* docs: fix typos on mcp guide (#3146)

* docs: update TanStack Start integration guide (#3142)

* fix(sveltekit): only dynamic import $app/environment once (#3152)

Co-authored-by: Work <work@Jasons-MacBook-Pro.local>

* docs: fix typo in oauth proxy documentation (#3151)

* blog: seed round announcement  (#3168)

* init

* cleanup

* fix seed round announcemnt

* fix seed round announcemnt

* seed round blog

* add nav mobile

* fix typo

* Update docs/content/blogs/seed-round.mdx

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

* Update docs/app/blog/[[...slug]]/page.tsx

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

* Update docs/app/blog/[[...slug]]/page.tsx

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

* update og

* cleanup

---------

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

* docs: fix email address

* refactor(mongo-adapter): migrate to createAdapter (#3170)

In the past we didn't have mongoDb adapter move over to createAdapter since we've seen users running into issues.

However some time ago I've merged a PR which I believe fixed the issue, and after testing the org plugin with the mongo adapter that uses `createAdapter` I don't see any issues.

* fix(api-key): update should only use by ID

* docs: fix blog page layout (#3176)

* fix/blog-page-layouts

* clean up

* docs: update contact email in seed round blog

* init

* cleanup

* feat(better-auth): add test utilities and update dependencies

- Introduced a new test utility module in `src/test-utils/index.ts` for better testing support.
- Updated `package.json` to include new test utilities in the build configuration.
- Added `oauth2-mock-server` dependency to `pnpm-lock.yaml` and `sso/package.json` for OAuth2 testing.
- Enhanced the SSO provider registration process with improved error handling.

* docs update

---------

Co-authored-by: Maxwell <145994855+ping-maxwell@users.noreply.github.com>
Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
Co-authored-by: Undefined Ninja <74867549+0xCodeMaieutics@users.noreply.github.com>
Co-authored-by: artemoire <18062266+artemoire@users.noreply.github.com>
Co-authored-by: reslear <12596485+reslear@users.noreply.github.com>
Co-authored-by: kzlar <120426485+kzlar@users.noreply.github.com>
Co-authored-by: Eliott C. <coyotte508@protonmail.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Alessandro Bortolin <bortolin.alessandro@outlook.it>
Co-authored-by: Lakshya Thakur <lapstjup@gmail.com>
Co-authored-by: Usman S. (Max Programming) <51731966+max-programming@users.noreply.github.com>
Co-authored-by: Jason Venable <jason.venable@gmail.com>
Co-authored-by: Work <work@Jasons-MacBook-Pro.local>
Co-authored-by: Dan McGrath <daniel.mcgrath9@gmail.com>
2025-06-27 20:19:19 -07:00
Bereket Engida
cdff6380ae chore: update hugging face logo 2025-06-20 15:02:28 -07:00
Eliott C.
6304efa8f0 feat: add Hugging Face provider (#3089)
* feat: add huggingface provider

* Add hugging face to doc
2025-06-20 15:01:29 -07:00
Maxwell
e49eb954b0 docs: basic errs with svg props (#3102) 2025-06-20 08:26:13 -07:00
Bereket Engida
9cc2e3d8ab feat: MCP plugin (#2666)
* chore: wip

* wip

* feat: mcp plugin

* wip

* chore: fix lock file

* clean up

* schema

* docs

* chore: lint

* chore: release v1.2.9-beta.1

* blog

* chore: lint
2025-05-23 12:44:51 -07:00
KinfeMichael Tariku
1f319519c7 chore: logo updates (#2745) 2025-05-22 02:14:41 -07:00
KinfeMichael Tariku
581ce7263f docs: clerk migrations guide (#2741)
* docs: typo in admin plugin

* docs: added clerk migration guide

* clean ups

* handling null

* added the icon

* lint

* unnessary options

* improve guide

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-05-22 00:23:36 -07:00
Anthony
5c9c5f5ef7 docs: fix grammar and spelling mistakes (#2300)
* Next.js

* ID

* Punctuation, code

* SQLite

* Capitalization

* Various corrections in "JWT"
2025-05-13 13:26:51 -07:00
Bereket Engida
defadb3b72 docs: change banner style 2025-05-06 13:35:55 -07:00
Bereket Engida
ae18f021c9 docs: add dub plugin docs 2025-05-06 10:23:50 -07:00
Samson Tesfaye
9e70836d12 docs: add Fastify integration guide 2025-05-02 05:37:18 -07:00
KinfeMichael Tariku
c140af64f9 docs: resource reference page (#2357) 2025-04-20 00:53:50 +03:00
Kinfe123
03d4429712 misalignment due to icon size 2025-04-17 06:31:00 +03:00
KinfeMichael Tariku
3c56085621 docs: minor updates to docs 2025-04-14 13:35:07 +03:00
Bereket Engida
46ff537535 chore: update lock file 2025-04-13 23:10:21 +03:00
Anthony DePasquale
0e12a5cb7a SvelteKit, Next.js, SolidStart 2025-04-13 14:11:08 +02:00
Anthony DePasquale
25d517e99e TypeScript 2025-04-13 14:11:08 +02:00
gandan
e077be39a2 docs: correct Svelte Kit to SvelteKit (#2246) 2025-04-13 14:59:47 +03:00
Bereket Engida
a927461ae5 fix: ipAddress and userAgent missing on server authentication (#2121)
* fix: ipAddress and userAgent missing on server authentication

* update craeteSession to use headers

* chore: revert version
2025-04-11 13:51:30 +03:00
John Tanzer
99ffacc251 feat: have-i-been-pwned plugin (#1978)
* feat: add have i been pwned first draft plugin

* fix: remove error being thrown when no password or body

* fix: return the ctx and ctx body check

* feat: add custom message option

* feat: add first draft docs for plugin

* fix: import in docs

* fix: big typo

* fix: typo

* fix: typo and correct error message

* fix: typo and options optional

* fix: small fixes import and safe options

* feat: add tests - not sure i totaly understand getTestInstance :(

* fix: lint

* simplify checks and fix tests

* feat: add "Have I Been Pwned" plugin to sidebar and update documentation

* build

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-04-11 12:39:41 +03:00
Khiet Tam Nguyen
4590b5b456 feat: zoom social provider (#1671)
* feat: zoom oauth

* docs: zoom oauth instructions

* docs: notes on adding more zoom scopes depending on use case

* chore: remove console.log

* update zoom icon

* update zoom icon

* fix: zoom export

* chore: lint

---------

Co-authored-by: KinfeMichael Tariku <65047246+Kinfe123@users.noreply.github.com>
Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-04-11 10:40:54 +03:00
Maxwell
986614b241 feat: createAdapter and useNumberId (#1926)
* refactor(adapter): `createAdapter` helper

* update: Kysely adapter support

* update: memory adapter

* chore: cleanup

* update: MongoDB adapter supported

* update: mongodb adapter file names

* update: support for prisma adapter

- also fixed memory adapter with `getField`
- disabled all debug logs by default

* chore: lint

* fix: generate an `id` if it isn't already provided

* update(test): init config snapshot

* update: existing adapters tests to include an `id` existence check

* fix: renamed prisma adapter file names

* ^

* update(mongo): Removed `disableIdGeneration` for mongo adapter

* fix: dont add `id` from fields if `disableIdGeneration` is false

* fix: adapter converting dates to string using the wrong value data

* add: create-adapter tests

* update: moved `adapter` to `create-adapter` under the existing `adapters` folder

* WIP: docs

* fix: create-adapter test importing from wrong path

* WIP: docs

* update: key transformation map options are now objs not fns

* chore: lint

* update: cleanup & added debugLogs/usePlural option to some adapters

* update: tests

* chore: cleanup

* update: fields name & made customTransforminput/output to run after supportsDates/supportsBoolean/SupportsJSON to run

* chore: lint

* Update: docs

* update: update-many to not use transformOutput

* chore: lint

* fix: adapter options breaking

* update: set the default limit on findMany

* update: docs

* update: docs & cleaned up code

* update: create schema comes with `tables` now

* This is useless

* fix: api-key shouldn't handle id gen in row creation

* chore: lint

* WIP: useNumberId

* chore: cleanup

* removed all cases of `id` during adapter.create call

* update: useNumberId

* update: drizzle adapter schema generation

- update: pg now sets `id` field to use `uuid`.
- fix: sets the correct reference `onDelete` action.
- refactor: cleaned up the code a lot more

* update: added `supportNumericIds` in create adapter options

* chore: cleanup

* update(tests): added option to disable any adapter tests & created a `useNumberId` test

* fix: skip tests options were using old method

* chore: lint

* WIP: Drizzle tests with number id

* chore: lint

* fix: memory adapter failing on number id adapter tests

* chore: cleanup

* fix: adapter tests fail due to emails needing to be unique

* update: support drizzle adapter use-number-id

* fix: cleanup Drizzle Adapter tests

* fix: drizzle schema generation for reference id fields

* fix: type errs in memory adapter tests

* fix: memory adapter tests

* Update init.test.ts.snap

* fix: prisma tests correctly uses the right primsa client per schema

* Delete run-vitest.ts

* update: create-adapter to support `getDefaultFieldName`

* update: create-adapter adapter options updated

* fix: adapters using older function names

* fix: create-adapter now converts where clauses & added tests

* update: new `getFieldAttributes` option in create-adapter, and fixed convert where clause fn

* chore: cleanup

* update: convertWhereClause in create-adapter improved

* update: BAOptions to start using `database` & updated adapter tests

* fix: type errors

* chore: lint

* update: default config values for the create-adapter config

* fix: getModelName doesnt take into account of plural

* chore: cleanup

* update: improved getDefaultModelname

* fix: create-adapter transform input doesn't take into account reference IDs

* fix: transformInput on reference IDs doesn't take into account of array IDs

* chore: lint

* fix: prisma tests

* fix: Prisma adapter tests running one after another

* fix: init snapshot should state supportJSON as `false`

* fix: drizzle adapter tests

* update: adapter test options to allow passing a test prefix

* chore: add state.txt to gitignore

* remove: state.txt from gitignore, it's useless

* chore: lint

* Update adapter.prisma.numberid.test.ts

* fix: get-migration for mysql & mssql `id` fields to use varchar

* chore: cleanup

* update: adapter comes with adapter-test-debug-log functions

* update: made adapterTestDebugLog functions only be in adapter if config enabled it

* fix: transactionId for debug logs not working correctly

This was due to the adapter being reinitialized each test case

* update: Added colors to debug logs

* update: adapter tests a little more refined

* add: deepmerge dev deps to deep merge better auth options config for adapters

* fix: create-adapter types

* update: revert back to old types

* fix: prisma adapter tests now run one after another

* fix: kysely adapter to work when no `id` is provided

* update: mongoDB to set `supportNumericids` to false

* update(docs): discuss new `database` object in BetterAuthOptions

* add: support for custom ID generation

* fix: docs had incorrect default value for `supportsJSON`

* update(docs): added number id adapter test documentation

* fix: drizzle-adapter mysql tests

* update: drizzle-adapter tests to use deepmerge

* add: drizzle-adapter mysql tests to test useNumberId

* add: Prisma generate to support number id

* update: support the old `generateId` option, but warn the user for deprecation

* update: init test snapshot

* update: adapter tests not included in normal tests

* Update pnpm-lock.yaml

* fix: typo in file names for kysley test files

* update: separated adapter tests

* Update pnpm-lock.yaml

* fix: please tell me I actually fixed this

* fix: pnpm-lock merge conflict

* chore: lint

* fix: sveltekit pkg.json merge conflicts (hopefully)

* Delete pnpm-lock.yaml

* update: createSchema takes into account of rate-limit and secondaryStorage

* improve docs

* add drizzle returning id retriver

* chore: fix test script

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-04-11 09:04:49 +03:00
Bereket Engida
155d9486ae feat: one-time token plugin (#2151) 2025-04-08 20:50:13 +03:00
Bereket Engida
6b4e20c61b docs: add supabase migration guide (#1829) 2025-03-15 16:10:47 +03:00
deestt
440784d3e1 feat: add Kick social provider (#1702)
* Add kick social provider

* Custom implementation `getUserInfo`

* Fix token endpoint URL

* add kick docs

* Update kick.mdx

* docs: update icon sizes to 1.2em, add "Kick"

* chore: lint

---------

Co-authored-by: Bereket Engida <bekacru@gmail.com>
2025-03-13 23:56:59 +03:00