gitextract_ge1ncw1v/ ├── .claude/ │ └── commands/ │ ├── migrate-to-d1.md │ ├── review-better-auth.md │ ├── review-terraform.md │ └── validate-auth-schema.md ├── .editorconfig ├── .gemini/ │ └── settings.json ├── .gitattributes ├── .github/ │ ├── CODE_OF_CONDUCT.md │ ├── CONTRIBUTING.md │ ├── FUNDING.yml │ ├── SECURITY.md │ ├── copilot-instructions.md │ ├── dependabot.yml │ └── workflows/ │ ├── ci.yml │ ├── conventional-commits.yml │ └── deploy.yml ├── .gitignore ├── .husky/ │ ├── .gitignore │ └── pre-commit ├── .prettierignore ├── .vscode/ │ ├── extensions.json │ ├── mcp.json │ └── settings.json ├── AGENTS.md ├── CLAUDE.md ├── LICENSE ├── README.md ├── apps/ │ ├── api/ │ │ ├── AGENTS.md │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── dev.ts │ │ ├── index.ts │ │ ├── lib/ │ │ │ ├── ai.ts │ │ │ ├── app.ts │ │ │ ├── auth.ts │ │ │ ├── context.ts │ │ │ ├── db.ts │ │ │ ├── email.ts │ │ │ ├── env.ts │ │ │ ├── loaders.ts │ │ │ ├── middleware.ts │ │ │ ├── plans.ts │ │ │ ├── stripe.ts │ │ │ └── trpc.ts │ │ ├── package.json │ │ ├── routers/ │ │ │ ├── billing.test.ts │ │ │ ├── billing.ts │ │ │ ├── organization.ts │ │ │ └── user.ts │ │ ├── tsconfig.json │ │ ├── vitest.config.ts │ │ ├── worker.ts │ │ └── wrangler.jsonc │ ├── app/ │ │ ├── AGENTS.md │ │ ├── README.md │ │ ├── components/ │ │ │ ├── auth/ │ │ │ │ ├── auth-error-boundary.tsx │ │ │ │ ├── auth-form.tsx │ │ │ │ ├── google-login.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── login-dialog.tsx │ │ │ │ ├── otp-verification.tsx │ │ │ │ ├── passkey-login.tsx │ │ │ │ └── use-auth-form.ts │ │ │ ├── index.ts │ │ │ ├── layout/ │ │ │ │ ├── constants.ts │ │ │ │ ├── header.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── sidebar-nav.tsx │ │ │ │ └── sidebar.tsx │ │ │ ├── not-found.tsx │ │ │ └── user-menu.tsx │ │ ├── components.json │ │ ├── global.d.ts │ │ ├── index.html │ │ ├── index.tsx │ │ ├── lib/ │ │ │ ├── auth-config.ts │ │ │ ├── auth.ts │ │ │ ├── errors.test.ts │ │ │ ├── errors.ts │ │ │ ├── queries/ │ │ │ │ ├── README.md │ │ │ │ ├── billing.test.ts │ │ │ │ ├── billing.ts │ │ │ │ ├── session.test.ts │ │ │ │ └── session.ts │ │ │ ├── query.ts │ │ │ ├── routeTree.gen.ts │ │ │ ├── store.ts │ │ │ ├── trpc.ts │ │ │ └── utils.ts │ │ ├── package.json │ │ ├── postcss.config.js │ │ ├── public/ │ │ │ ├── robots.txt │ │ │ └── site.manifest │ │ ├── routes/ │ │ │ ├── (app)/ │ │ │ │ ├── about.tsx │ │ │ │ ├── analytics.tsx │ │ │ │ ├── dashboard.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── reports.tsx │ │ │ │ ├── route.tsx │ │ │ │ ├── settings.tsx │ │ │ │ └── users.tsx │ │ │ ├── (auth)/ │ │ │ │ ├── login.tsx │ │ │ │ └── signup.tsx │ │ │ └── __root.tsx │ │ ├── styles/ │ │ │ └── globals.css │ │ ├── tailwind.config.css │ │ ├── tsconfig.json │ │ ├── vite.config.ts │ │ ├── vitest.setup.ts │ │ └── wrangler.jsonc │ ├── email/ │ │ ├── README.md │ │ ├── components/ │ │ │ └── BaseTemplate.tsx │ │ ├── emails/ │ │ │ ├── email-verification.tsx │ │ │ ├── otp-password-reset.tsx │ │ │ ├── otp-sign-in.tsx │ │ │ ├── otp-verification.tsx │ │ │ └── password-reset.tsx │ │ ├── index.ts │ │ ├── package.json │ │ ├── templates/ │ │ │ ├── email-verification.tsx │ │ │ ├── otp-email.tsx │ │ │ └── password-reset.tsx │ │ ├── tsconfig.json │ │ └── utils/ │ │ └── render.ts │ └── web/ │ ├── README.md │ ├── _headers │ ├── astro.config.mjs │ ├── layouts/ │ │ └── BaseLayout.astro │ ├── lib/ │ │ └── utils.ts │ ├── package.json │ ├── pages/ │ │ ├── about.astro │ │ ├── features.astro │ │ ├── index.astro │ │ └── pricing.astro │ ├── postcss.config.js │ ├── public/ │ │ ├── robots.txt │ │ └── site.manifest │ ├── styles/ │ │ └── globals.css │ ├── tailwind.config.css │ ├── tsconfig.json │ ├── worker.ts │ └── wrangler.jsonc ├── db/ │ ├── AGENTS.md │ ├── README.md │ ├── backups/ │ │ └── .gitignore │ ├── drizzle.config.ts │ ├── index.ts │ ├── migrations/ │ │ ├── 0000_init.sql │ │ └── meta/ │ │ ├── 0000_snapshot.json │ │ └── _journal.json │ ├── package.json │ ├── schema/ │ │ ├── id.ts │ │ ├── index.ts │ │ ├── invitation.ts │ │ ├── organization.ts │ │ ├── passkey.ts │ │ ├── subscription.ts │ │ └── user.ts │ ├── scripts/ │ │ ├── export.ts │ │ ├── generate-auth-schema.ts │ │ └── seed.ts │ ├── seeds/ │ │ └── users.ts │ └── tsconfig.json ├── docs/ │ ├── .vitepress/ │ │ ├── config.ts │ │ ├── public/ │ │ │ └── robots.txt │ │ └── theme/ │ │ ├── components/ │ │ │ ├── GitHubStats.vue │ │ │ └── Mermaid.vue │ │ ├── index.ts │ │ └── style.css │ ├── adr/ │ │ ├── 000-template.md │ │ └── 001-auth-hint-cookie.md │ ├── api/ │ │ ├── context.md │ │ ├── index.md │ │ ├── procedures.md │ │ └── validation-errors.md │ ├── architecture/ │ │ ├── edge.md │ │ └── index.md │ ├── auth/ │ │ ├── email-otp.md │ │ ├── index.md │ │ ├── organizations.md │ │ ├── passkeys.md │ │ ├── sessions.md │ │ └── social-providers.md │ ├── billing/ │ │ ├── checkout.md │ │ ├── index.md │ │ ├── plans.md │ │ └── webhooks.md │ ├── database/ │ │ ├── index.md │ │ ├── migrations.md │ │ ├── queries.md │ │ ├── schema.md │ │ └── seeding.md │ ├── deployment/ │ │ ├── ci-cd.md │ │ ├── cloudflare.md │ │ ├── index.md │ │ ├── monitoring.md │ │ └── production-database.md │ ├── email.md │ ├── frontend/ │ │ ├── forms.md │ │ ├── routing.md │ │ ├── state.md │ │ └── ui.md │ ├── getting-started/ │ │ ├── environment-variables.md │ │ ├── index.md │ │ ├── project-structure.md │ │ └── quick-start.md │ ├── index.md │ ├── public/ │ │ └── CNAME │ ├── recipes/ │ │ ├── file-uploads.md │ │ ├── new-page.md │ │ ├── new-procedure.md │ │ ├── new-table.md │ │ ├── teams.md │ │ └── websockets.md │ ├── security/ │ │ ├── checklist.md │ │ ├── incident-playbook.md │ │ └── policy-template.md │ ├── specs/ │ │ ├── auth-form.md │ │ ├── billing.md │ │ ├── infra-terraform.md │ │ └── prefixed-ids.md │ └── testing.md ├── eslint.config.ts ├── infra/ │ ├── .gitignore │ ├── README.md │ ├── envs/ │ │ ├── dev/ │ │ │ └── edge/ │ │ │ ├── .terraform.lock.hcl │ │ │ ├── main.tf │ │ │ ├── providers.tf │ │ │ ├── terraform.tfvars.example │ │ │ └── variables.tf │ │ ├── preview/ │ │ │ └── edge/ │ │ │ ├── .terraform.lock.hcl │ │ │ ├── main.tf │ │ │ ├── providers.tf │ │ │ ├── terraform.tfvars.example │ │ │ └── variables.tf │ │ ├── prod/ │ │ │ └── edge/ │ │ │ ├── .terraform.lock.hcl │ │ │ ├── main.tf │ │ │ ├── providers.tf │ │ │ ├── terraform.tfvars.example │ │ │ └── variables.tf │ │ └── staging/ │ │ └── edge/ │ │ ├── .terraform.lock.hcl │ │ ├── main.tf │ │ ├── providers.tf │ │ ├── terraform.tfvars.example │ │ └── variables.tf │ ├── modules/ │ │ ├── cloudflare/ │ │ │ ├── dns/ │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── hyperdrive/ │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── r2-bucket/ │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── worker/ │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── gcp/ │ │ ├── cloud-run/ │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── cloud-sql/ │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── gcs/ │ │ ├── main.tf │ │ ├── outputs.tf │ │ └── variables.tf │ ├── stacks/ │ │ ├── edge/ │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── hybrid/ │ │ ├── main.tf │ │ ├── outputs.tf │ │ └── variables.tf │ └── templates/ │ ├── backend-gcs.example.hcl │ ├── backend-r2.example.hcl │ └── env-roots/ │ └── hybrid/ │ ├── .terraform.lock.hcl │ ├── README.md │ ├── main.tf │ ├── providers.tf │ ├── terraform.tfvars.example │ └── variables.tf ├── package.json ├── packages/ │ ├── core/ │ │ ├── README.md │ │ ├── index.ts │ │ ├── package.json │ │ └── tsconfig.json │ ├── typescript-config/ │ │ ├── README.md │ │ ├── base.jsonc │ │ ├── cloudflare.jsonc │ │ ├── node.jsonc │ │ ├── package.json │ │ └── react.jsonc │ ├── ui/ │ │ ├── README.md │ │ ├── components/ │ │ │ ├── avatar.tsx │ │ │ ├── button.tsx │ │ │ ├── card.tsx │ │ │ ├── checkbox.tsx │ │ │ ├── dialog.tsx │ │ │ ├── input.tsx │ │ │ ├── label.tsx │ │ │ ├── radio-group.tsx │ │ │ ├── scroll-area.tsx │ │ │ ├── select.tsx │ │ │ ├── separator.tsx │ │ │ ├── skeleton.tsx │ │ │ ├── switch.tsx │ │ │ └── textarea.tsx │ │ ├── components.json │ │ ├── hooks/ │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── lib/ │ │ │ └── utils.ts │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── add.ts │ │ │ ├── essentials.ts │ │ │ ├── format-utils.ts │ │ │ ├── list.ts │ │ │ └── update.ts │ │ ├── styles.css │ │ └── tsconfig.json │ └── ws-protocol/ │ ├── README.md │ ├── example.ts │ ├── index.ts │ ├── messages.ts │ ├── package.json │ ├── router.ts │ └── tsconfig.json ├── scripts/ │ ├── mcp.ts │ ├── package.json │ ├── post-install.ts │ └── tsconfig.json ├── tsconfig.json └── vitest.config.ts