├── .eslintrc.cjs ├── .gitignore ├── .prettierrc ├── README.md ├── components.json ├── convex ├── README.md ├── _generated │ ├── api.d.ts │ ├── api.js │ ├── dataModel.d.ts │ ├── server.d.ts │ └── server.js ├── auth.config.ts ├── auth.ts ├── errors.ts ├── helpers.ts ├── http.ts ├── messages.ts ├── otp │ ├── ResendOTP.ts │ ├── TwilioOTP.ts │ ├── TwilioSDK.ts │ ├── TwilioVerify.ts │ └── VerificationCodeEmail.tsx ├── passwordReset │ ├── PasswordResetEmail.tsx │ └── ResendOTPPasswordReset.ts ├── schema.ts ├── tsconfig.json └── users.ts ├── index.html ├── package.json ├── postcss.config.js ├── public └── convex.svg ├── setup.mjs ├── src ├── App.tsx ├── Chat │ ├── Chat.tsx │ ├── ChatIntro.tsx │ ├── Message.tsx │ ├── MessageList.tsx │ └── randomName.ts ├── Layout.tsx ├── auth │ ├── CodeInput.tsx │ ├── ResetPasswordWithEmailCode.tsx │ ├── SignInFormAnonymous.tsx │ ├── SignInFormEmailCode.tsx │ ├── SignInFormEmailLink.tsx │ ├── SignInFormPassword.tsx │ ├── SignInFormPasswordAndCustomField.tsx │ ├── SignInFormPasswordAndResetViaCode.tsx │ ├── SignInFormPasswordAndVerifyViaCode.tsx │ ├── SignInFormPasswordAndVerifyViaLink.tsx │ ├── SignInFormPhoneCode.tsx │ ├── SignInFormsShowcase.tsx │ ├── SignInMethodDivider.tsx │ ├── SignInWithEmailCode.tsx │ ├── SignInWithOAuth.tsx │ ├── SignInWithPassword.tsx │ └── oauth │ │ ├── SignInWithApple.tsx │ │ ├── SignInWithGitHub.tsx │ │ └── SignInWithGoogle.tsx ├── components │ ├── AppleLogo.tsx │ ├── Code.tsx │ ├── GitHubLogo.tsx │ ├── GoogleLogo.tsx │ ├── ThemeToggle.tsx │ ├── UserMenu.tsx │ ├── typography │ │ └── code.tsx │ └── ui │ │ ├── button.tsx │ │ ├── card.tsx │ │ ├── dialog.tsx │ │ ├── dropdown-menu.tsx │ │ ├── input-otp.tsx │ │ ├── input.tsx │ │ ├── skeleton.tsx │ │ ├── tabs.tsx │ │ ├── toast.tsx │ │ ├── toaster.tsx │ │ ├── toggle-group.tsx │ │ ├── toggle.tsx │ │ └── use-toast.ts ├── index.css ├── lib │ └── utils.ts ├── main.tsx ├── utils.ts └── vite-env.d.ts ├── tailwind.config.js ├── tsconfig.json ├── tsconfig.node.json ├── vite.config.ts └── vitest.config.mts /.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/.eslintrc.cjs -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/README.md -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/components.json -------------------------------------------------------------------------------- /convex/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/README.md -------------------------------------------------------------------------------- /convex/_generated/api.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/_generated/api.d.ts -------------------------------------------------------------------------------- /convex/_generated/api.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/_generated/api.js -------------------------------------------------------------------------------- /convex/_generated/dataModel.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/_generated/dataModel.d.ts -------------------------------------------------------------------------------- /convex/_generated/server.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/_generated/server.d.ts -------------------------------------------------------------------------------- /convex/_generated/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/_generated/server.js -------------------------------------------------------------------------------- /convex/auth.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/auth.config.ts -------------------------------------------------------------------------------- /convex/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/auth.ts -------------------------------------------------------------------------------- /convex/errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/errors.ts -------------------------------------------------------------------------------- /convex/helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/helpers.ts -------------------------------------------------------------------------------- /convex/http.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/http.ts -------------------------------------------------------------------------------- /convex/messages.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/messages.ts -------------------------------------------------------------------------------- /convex/otp/ResendOTP.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/otp/ResendOTP.ts -------------------------------------------------------------------------------- /convex/otp/TwilioOTP.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/otp/TwilioOTP.ts -------------------------------------------------------------------------------- /convex/otp/TwilioSDK.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/otp/TwilioSDK.ts -------------------------------------------------------------------------------- /convex/otp/TwilioVerify.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/otp/TwilioVerify.ts -------------------------------------------------------------------------------- /convex/otp/VerificationCodeEmail.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/otp/VerificationCodeEmail.tsx -------------------------------------------------------------------------------- /convex/passwordReset/PasswordResetEmail.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/passwordReset/PasswordResetEmail.tsx -------------------------------------------------------------------------------- /convex/passwordReset/ResendOTPPasswordReset.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/passwordReset/ResendOTPPasswordReset.ts -------------------------------------------------------------------------------- /convex/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/schema.ts -------------------------------------------------------------------------------- /convex/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/tsconfig.json -------------------------------------------------------------------------------- /convex/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/convex/users.ts -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/index.html -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/convex.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/public/convex.svg -------------------------------------------------------------------------------- /setup.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/setup.mjs -------------------------------------------------------------------------------- /src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/App.tsx -------------------------------------------------------------------------------- /src/Chat/Chat.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Chat/Chat.tsx -------------------------------------------------------------------------------- /src/Chat/ChatIntro.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Chat/ChatIntro.tsx -------------------------------------------------------------------------------- /src/Chat/Message.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Chat/Message.tsx -------------------------------------------------------------------------------- /src/Chat/MessageList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Chat/MessageList.tsx -------------------------------------------------------------------------------- /src/Chat/randomName.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Chat/randomName.ts -------------------------------------------------------------------------------- /src/Layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/Layout.tsx -------------------------------------------------------------------------------- /src/auth/CodeInput.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/CodeInput.tsx -------------------------------------------------------------------------------- /src/auth/ResetPasswordWithEmailCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/ResetPasswordWithEmailCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormAnonymous.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormAnonymous.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormEmailCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormEmailCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormEmailLink.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormEmailLink.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPassword.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPassword.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPasswordAndCustomField.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPasswordAndCustomField.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPasswordAndResetViaCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPasswordAndResetViaCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPasswordAndVerifyViaCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPasswordAndVerifyViaCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPasswordAndVerifyViaLink.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPasswordAndVerifyViaLink.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormPhoneCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormPhoneCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInFormsShowcase.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInFormsShowcase.tsx -------------------------------------------------------------------------------- /src/auth/SignInMethodDivider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInMethodDivider.tsx -------------------------------------------------------------------------------- /src/auth/SignInWithEmailCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInWithEmailCode.tsx -------------------------------------------------------------------------------- /src/auth/SignInWithOAuth.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInWithOAuth.tsx -------------------------------------------------------------------------------- /src/auth/SignInWithPassword.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/SignInWithPassword.tsx -------------------------------------------------------------------------------- /src/auth/oauth/SignInWithApple.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/oauth/SignInWithApple.tsx -------------------------------------------------------------------------------- /src/auth/oauth/SignInWithGitHub.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/oauth/SignInWithGitHub.tsx -------------------------------------------------------------------------------- /src/auth/oauth/SignInWithGoogle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/auth/oauth/SignInWithGoogle.tsx -------------------------------------------------------------------------------- /src/components/AppleLogo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/AppleLogo.tsx -------------------------------------------------------------------------------- /src/components/Code.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/Code.tsx -------------------------------------------------------------------------------- /src/components/GitHubLogo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/GitHubLogo.tsx -------------------------------------------------------------------------------- /src/components/GoogleLogo.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/GoogleLogo.tsx -------------------------------------------------------------------------------- /src/components/ThemeToggle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ThemeToggle.tsx -------------------------------------------------------------------------------- /src/components/UserMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/UserMenu.tsx -------------------------------------------------------------------------------- /src/components/typography/code.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/typography/code.tsx -------------------------------------------------------------------------------- /src/components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/button.tsx -------------------------------------------------------------------------------- /src/components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/card.tsx -------------------------------------------------------------------------------- /src/components/ui/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/dialog.tsx -------------------------------------------------------------------------------- /src/components/ui/dropdown-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/dropdown-menu.tsx -------------------------------------------------------------------------------- /src/components/ui/input-otp.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/input-otp.tsx -------------------------------------------------------------------------------- /src/components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/input.tsx -------------------------------------------------------------------------------- /src/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /src/components/ui/tabs.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/tabs.tsx -------------------------------------------------------------------------------- /src/components/ui/toast.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/toast.tsx -------------------------------------------------------------------------------- /src/components/ui/toaster.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/toaster.tsx -------------------------------------------------------------------------------- /src/components/ui/toggle-group.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/toggle-group.tsx -------------------------------------------------------------------------------- /src/components/ui/toggle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/toggle.tsx -------------------------------------------------------------------------------- /src/components/ui/use-toast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/components/ui/use-toast.ts -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/index.css -------------------------------------------------------------------------------- /src/lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/lib/utils.ts -------------------------------------------------------------------------------- /src/main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/main.tsx -------------------------------------------------------------------------------- /src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/src/utils.ts -------------------------------------------------------------------------------- /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.node.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/tsconfig.node.json -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/vite.config.ts -------------------------------------------------------------------------------- /vitest.config.mts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/get-convex/convex-auth-example/HEAD/vitest.config.mts --------------------------------------------------------------------------------