Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
57 changes: 0 additions & 57 deletions .github/actions/pack-sample/action.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/pr-builder.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,10 +94,10 @@ jobs:
run: pnpm format:check

- name: 🧹 Lint
run: pnpm --filter '!./packages/**' --filter '!./samples/**' lint
run: pnpm --filter '!./packages/**' lint

- name: 🧪 Test
run: pnpm --filter '!./packages/**' --filter '!./samples/**' test
run: pnpm --filter '!./packages/**' test

e2e:
name: 🎭 Playwright E2E Tests
Expand Down
11 changes: 1 addition & 10 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -255,22 +255,13 @@ jobs:
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

- name: 📦 Pack Sample
id: pack
uses: ./.github/actions/pack-sample
with:
sdk: better-auth
version: ${{ steps.bump.outputs.version }}
path: samples/integrations/better-auth/nextjs

- name: 🚀 Create GitHub Release
env:
GH_TOKEN: ${{ secrets.THUNDERID_AUTOMATION_BOT }}
run: |
gh release create "sdk/better-auth/v${{ steps.bump.outputs.version }}" \
--title "ThunderID Better Auth SDK v${{ steps.bump.outputs.version }}" \
--generate-notes \
"${{ steps.pack.outputs.archive }}"
--generate-notes

# ── Level 1: depends on javascript ─────────────────────────────────────────
release-browser:
Expand Down
11 changes: 4 additions & 7 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@
pnpm + Turborepo monorepo of TypeScript SDKs under `packages/`: a framework-agnostic core
(`@thunderid/javascript`), a browser layer (`@thunderid/browser`), a server layer (`@thunderid/node`), and
framework SDKs built on top of those (`react`, `vue`, `nuxt`, `nextjs`, `express`, `react-router`,
`tanstack-router`). The per-framework quickstarts live in
`tanstack-router`). The per-framework quickstarts and integration samples live in
[thunder-id/samples](https://github.com/thunder-id/samples) and depend on the published packages; the E2E
suite fetches them into `tests/e2e/.samples` and wires them to this workspace's builds
(`tests/e2e/scripts/prepare-samples.ts`). `samples/integrations/` holds integration samples that are not
part of any published package.
suite fetches the quickstarts into `tests/e2e/.samples` and wires them to this workspace's builds
(`tests/e2e/scripts/prepare-samples.ts`).

## SDK development specification

Expand Down Expand Up @@ -96,8 +95,7 @@ field, so storage keys, cookie names, CSS class prefixes, state keys, etc. shoul
## Code style

- TypeScript, ESLint via `@thunderid/eslint-plugin`, Prettier.
- Every source file carries a copyright header (`@thunderid/copyright-header` ESLint rule); `samples/**` is
exempt (see `eslint.config.js`).
- Every source file carries a copyright header (`@thunderid/copyright-header` ESLint rule).
- Prefer editing or re-exporting an existing util over duplicating a helper across packages (see hierarchy
above).

Expand All @@ -116,6 +114,5 @@ packages/
react-router/ React Router integration
tanstack-router/ TanStack Router integration
playgrounds/ Playground apps that exercise the SDKs from source (not published)
samples/ Integration samples (quickstarts live in thunder-id/samples)
tests/e2e/ Playwright suite driving the quickstarts against a real ThunderID server
```
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,13 @@ Apps under [`playgrounds/`](playgrounds) exercise the SDKs from the source in th

| Playground | Run | What it shows |
|---|---|---|
| [Browser](playgrounds/browser) | `pnpm --filter @thunderid/playground-browser dev` | Capability checks against `ThunderIDBrowserClient` with a live `on()` hook log, an explorer for the `@thunderid/browser` UI helpers, and tokens |
| [Express](playgrounds/express) | `pnpm --filter @thunderid/playground-express dev` | API explorer for the `@thunderid/express` handlers and protected routes, with an SDK trace |
| [Next.js](playgrounds/nextjs) | `pnpm --filter @thunderid/playground-nextjs dev` | Client and server capability checks, a component explorer for the `@thunderid/nextjs` components, a Server page with an API explorer for the proxy and route handlers, and tokens |
| [Node.js](playgrounds/node) | `pnpm --filter @thunderid/playground-node dev` | Operations explorer for every `ThunderIDNodeClient` method from `@thunderid/node`, with the HTTP requests and an SDK trace |
| [Nuxt](playgrounds/nuxt) | `pnpm --filter @thunderid/playground-nuxt dev` | Client and server capability checks, a component explorer for the `@thunderid/nuxt` components with Vue SFC snippets, live composables, and a Server page with the SSR context, the server session, and an API explorer for the module routes, server utilities, and route middleware |
| [React](playgrounds/react) | `pnpm --filter @thunderid/playground-react dev` | Capability checks, a component explorer for the `@thunderid/react` components, and live hooks and tokens |
| [Vue](playgrounds/vue) | `pnpm --filter @thunderid/playground-vue dev` | Capability checks, a component explorer for the `@thunderid/vue` components with Vue SFC snippets, and live composables and tokens |

## Contributing

Expand Down
6 changes: 0 additions & 6 deletions eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,6 @@ export default [
ignores: ['dist/**', 'build/**', 'node_modules/**', 'coverage/**', 'tests/e2e/.samples/**'],
},
...thunderIdPlugin.configs.typescript,
{
files: ['samples/**'],
rules: {
'@thunderid/copyright-header': 'off',
},
},
{
// Progress/setup/teardown output is the intended UX for E2E tooling, not stray debug
// logging — same reasoning thunderid's own tests/e2e applies (no no-console rule there).
Expand Down
Loading
Loading