a13n
AI 에이전트를 만들고 클라우드에서 실행합니다
Nuxt UI로 만든 Better Auth용 로그인 페이지, 셀프 서비스 계정 페이지, 조직 관리 및 관리자 대시보드
Sign-in pages, a self-service account page, organizations and an admin dashboard for Better Auth in Nuxt, built with Nuxt UI.
개발 도구TypeScript · VueGitHub @treygrr온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Sign-in, account, organization and admin pages for Better Auth in Nuxt, built with Nuxt UI
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Auth UI for Better Auth in Nuxt, built with Nuxt UI.
/admin: users, sessions, bans, staff roles, impersonation, an audit log and staff notes,
through Better Auth's Admin plugin.Everything is configured under betterAuthUi in nuxt.config.ts. When a feature needs a Better Auth plugin, the
module adds it for you.
pnpm add @treygrr/nuxt-better-auth-ui @iconify-json/lucide @iconify-json/simple-icons
// nuxt.config.ts
export default defineNuxtConfig({
modules: ['@treygrr/nuxt-better-auth-ui'],
betterAuthUi: {
twoFactor: { enabled: true },
passkey: { enabled: true }
}
});
Then point Tailwind at the module's pages, run Better Auth's migrations, and give yourself the admin role: see Installation.
| Getting started | Installation, and every option at a glance |
| Sign-in | The pages, the account page, every sign-in method, two-factor, passkeys, security |
| Organizations | Organizations, roles and permissions, single sign-on |
| Admin dashboard | Managing users, staff roles, the audit log |
| Integrations | Stripe, API keys, bearer tokens and JWTs |
| Customization | Emails, languages and your own words |
Contributions are welcome: see Contributing for setting up, the tests, and adding a feature.
pnpm install
cp playground/.env.example playground/.env
pnpm dev:prepare
pnpm dev # the playground
pnpm test # builds the module and the playground, starts it once, then runs the API tests and the browser tests
pnpm typecheck
pnpm fmt
pnpm docs:dev # the documentation site (docs/), on http://localhost:3002
pnpm docs:generate # its static build, as GitHub Pages serves it
pnpm docs:screenshots # retakes the docs' screenshots, from a built playground
The repository is a pnpm workspace: the module at the root, playground/ and docs/ (the documentation site, made
with Nuxt Content from the Nuxt UI docs template). Pushes to main that change docs/ publish it to GitHub Pages
(.github/workflows/docs.yml).
The browser tests (test/browser/) drive Chromium through the pages: signing up and in, magic links, password
resets, the account tabs, two-factor end to end, passkeys with Chromium's virtual authenticator, organizations, single
sign-on and the admin. Any console error or warning fails them, so a hydration mismatch does. They use
CHROMIUM_PATH, a system Chromium or Chrome, or Playwright's own (npx playwright install chromium); without one
they're skipped.
On startup the playground seeds an admin ([email protected] / password123 by default) and 40 mock users from
playground/.env: join dates over six months, verified and unverified emails, two more admins, three bans
(permanent, expiring, expired), a moderator ([email protected], for trying the playground's moderator role),
linked GitHub, Google and Discord accounts (some users have no password), and active sessions on different devices.
Mock users share the admin's password. It only adds users that are missing, so delete playground/.data/auth.sqlite
to start over.
MIT. The parts adapted from the Nuxt UI dashboard template keep its MIT notice; see LICENSE.