├── .env.example ├── .eslintrc.json ├── .gitignore ├── .vscode └── settings.json ├── README.md ├── components.json ├── drizzle.config.ts ├── drizzle ├── 0000_blue_logan.sql └── meta │ ├── 0000_snapshot.json │ └── _journal.json ├── next.config.js ├── package.json ├── postcss.config.js ├── public ├── arrow.svg ├── grid.svg ├── images │ └── app │ │ ├── demo1.png │ │ ├── demo2.png │ │ ├── demo3.png │ │ └── demo4.png ├── next.svg └── vercel.svg ├── src ├── app │ ├── (admin) │ │ ├── layout.tsx │ │ ├── results │ │ │ ├── FormsPicker.tsx │ │ │ ├── ResultsDisplay.tsx │ │ │ ├── Table.tsx │ │ │ └── page.tsx │ │ ├── settings │ │ │ ├── ManageSubscription.tsx │ │ │ └── page.tsx │ │ └── view-forms │ │ │ └── page.tsx │ ├── actions │ │ ├── generateForm.ts │ │ ├── getUserForms.ts │ │ ├── mutateForm.ts │ │ ├── navigateToForm.ts │ │ └── userSubscriptions.ts │ ├── api │ │ ├── auth │ │ │ └── [...nextauth] │ │ │ │ └── route.ts │ │ ├── form │ │ │ └── new │ │ │ │ └── route.ts │ │ └── stripe │ │ │ ├── checkout-session │ │ │ └── route.ts │ │ │ ├── create-portal │ │ │ └── route.ts │ │ │ └── webhook │ │ │ └── route.ts │ ├── favicon.ico │ ├── form-generator │ │ ├── UserSubscriptionWrapper.tsx │ │ └── index.tsx │ ├── forms │ │ ├── Form.tsx │ │ ├── FormField.tsx │ │ ├── FormPublishSuccess.tsx │ │ ├── FormsList.tsx │ │ ├── [formId] │ │ │ ├── page.tsx │ │ │ └── success │ │ │ │ └── page.tsx │ │ ├── edit │ │ │ └── [formId] │ │ │ │ └── page.tsx │ │ └── layout.tsx │ ├── globals.css │ ├── landing-page │ │ └── index.tsx │ ├── layout.tsx │ ├── page.tsx │ ├── payment │ │ └── success │ │ │ └── page.tsx │ └── subscription │ │ └── SubscribeBtn.tsx ├── auth.ts ├── components │ ├── icons.tsx │ ├── navigation │ │ ├── navbar.tsx │ │ └── updgradeAccBtn.tsx │ ├── progressBar.tsx │ └── ui │ │ ├── alert.tsx │ │ ├── button.tsx │ │ ├── card.tsx │ │ ├── dialog.tsx │ │ ├── form.tsx │ │ ├── header.tsx │ │ ├── input.tsx │ │ ├── label.tsx │ │ ├── radio-group.tsx │ │ ├── select.tsx │ │ ├── switch.tsx │ │ └── textarea.tsx ├── db │ ├── index.ts │ └── schema.ts ├── lib │ ├── stripe-client.ts │ ├── stripe.ts │ └── utils.ts └── types │ ├── form-types.d.ts │ └── nav-types.d.ts ├── tailwind.config.js ├── tailwind.config.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/README.md -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/components.json -------------------------------------------------------------------------------- /drizzle.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/drizzle.config.ts -------------------------------------------------------------------------------- /drizzle/0000_blue_logan.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/drizzle/0000_blue_logan.sql -------------------------------------------------------------------------------- /drizzle/meta/0000_snapshot.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/drizzle/meta/0000_snapshot.json -------------------------------------------------------------------------------- /drizzle/meta/_journal.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/drizzle/meta/_journal.json -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/arrow.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/arrow.svg -------------------------------------------------------------------------------- /public/grid.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/grid.svg -------------------------------------------------------------------------------- /public/images/app/demo1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/images/app/demo1.png -------------------------------------------------------------------------------- /public/images/app/demo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/images/app/demo2.png -------------------------------------------------------------------------------- /public/images/app/demo3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/images/app/demo3.png -------------------------------------------------------------------------------- /public/images/app/demo4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/images/app/demo4.png -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /src/app/(admin)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/layout.tsx -------------------------------------------------------------------------------- /src/app/(admin)/results/FormsPicker.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/results/FormsPicker.tsx -------------------------------------------------------------------------------- /src/app/(admin)/results/ResultsDisplay.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/results/ResultsDisplay.tsx -------------------------------------------------------------------------------- /src/app/(admin)/results/Table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/results/Table.tsx -------------------------------------------------------------------------------- /src/app/(admin)/results/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/results/page.tsx -------------------------------------------------------------------------------- /src/app/(admin)/settings/ManageSubscription.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/settings/ManageSubscription.tsx -------------------------------------------------------------------------------- /src/app/(admin)/settings/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/settings/page.tsx -------------------------------------------------------------------------------- /src/app/(admin)/view-forms/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/(admin)/view-forms/page.tsx -------------------------------------------------------------------------------- /src/app/actions/generateForm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/actions/generateForm.ts -------------------------------------------------------------------------------- /src/app/actions/getUserForms.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/actions/getUserForms.ts -------------------------------------------------------------------------------- /src/app/actions/mutateForm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/actions/mutateForm.ts -------------------------------------------------------------------------------- /src/app/actions/navigateToForm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/actions/navigateToForm.ts -------------------------------------------------------------------------------- /src/app/actions/userSubscriptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/actions/userSubscriptions.ts -------------------------------------------------------------------------------- /src/app/api/auth/[...nextauth]/route.ts: -------------------------------------------------------------------------------- 1 | export { GET, POST } from "@/auth"; 2 | -------------------------------------------------------------------------------- /src/app/api/form/new/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/api/form/new/route.ts -------------------------------------------------------------------------------- /src/app/api/stripe/checkout-session/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/api/stripe/checkout-session/route.ts -------------------------------------------------------------------------------- /src/app/api/stripe/create-portal/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/api/stripe/create-portal/route.ts -------------------------------------------------------------------------------- /src/app/api/stripe/webhook/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/api/stripe/webhook/route.ts -------------------------------------------------------------------------------- /src/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/favicon.ico -------------------------------------------------------------------------------- /src/app/form-generator/UserSubscriptionWrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/form-generator/UserSubscriptionWrapper.tsx -------------------------------------------------------------------------------- /src/app/form-generator/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/form-generator/index.tsx -------------------------------------------------------------------------------- /src/app/forms/Form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/Form.tsx -------------------------------------------------------------------------------- /src/app/forms/FormField.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/FormField.tsx -------------------------------------------------------------------------------- /src/app/forms/FormPublishSuccess.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/FormPublishSuccess.tsx -------------------------------------------------------------------------------- /src/app/forms/FormsList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/FormsList.tsx -------------------------------------------------------------------------------- /src/app/forms/[formId]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/[formId]/page.tsx -------------------------------------------------------------------------------- /src/app/forms/[formId]/success/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/[formId]/success/page.tsx -------------------------------------------------------------------------------- /src/app/forms/edit/[formId]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/edit/[formId]/page.tsx -------------------------------------------------------------------------------- /src/app/forms/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/forms/layout.tsx -------------------------------------------------------------------------------- /src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/globals.css -------------------------------------------------------------------------------- /src/app/landing-page/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/landing-page/index.tsx -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/layout.tsx -------------------------------------------------------------------------------- /src/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/page.tsx -------------------------------------------------------------------------------- /src/app/payment/success/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/payment/success/page.tsx -------------------------------------------------------------------------------- /src/app/subscription/SubscribeBtn.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/app/subscription/SubscribeBtn.tsx -------------------------------------------------------------------------------- /src/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/auth.ts -------------------------------------------------------------------------------- /src/components/icons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/icons.tsx -------------------------------------------------------------------------------- /src/components/navigation/navbar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/navigation/navbar.tsx -------------------------------------------------------------------------------- /src/components/navigation/updgradeAccBtn.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/navigation/updgradeAccBtn.tsx -------------------------------------------------------------------------------- /src/components/progressBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/progressBar.tsx -------------------------------------------------------------------------------- /src/components/ui/alert.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/alert.tsx -------------------------------------------------------------------------------- /src/components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/button.tsx -------------------------------------------------------------------------------- /src/components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/card.tsx -------------------------------------------------------------------------------- /src/components/ui/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/dialog.tsx -------------------------------------------------------------------------------- /src/components/ui/form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/form.tsx -------------------------------------------------------------------------------- /src/components/ui/header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/header.tsx -------------------------------------------------------------------------------- /src/components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/input.tsx -------------------------------------------------------------------------------- /src/components/ui/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/label.tsx -------------------------------------------------------------------------------- /src/components/ui/radio-group.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/radio-group.tsx -------------------------------------------------------------------------------- /src/components/ui/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/select.tsx -------------------------------------------------------------------------------- /src/components/ui/switch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/switch.tsx -------------------------------------------------------------------------------- /src/components/ui/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/components/ui/textarea.tsx -------------------------------------------------------------------------------- /src/db/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/db/index.ts -------------------------------------------------------------------------------- /src/db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/db/schema.ts -------------------------------------------------------------------------------- /src/lib/stripe-client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/lib/stripe-client.ts -------------------------------------------------------------------------------- /src/lib/stripe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/lib/stripe.ts -------------------------------------------------------------------------------- /src/lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/lib/utils.ts -------------------------------------------------------------------------------- /src/types/form-types.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/types/form-types.d.ts -------------------------------------------------------------------------------- /src/types/nav-types.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/src/types/nav-types.d.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/ai-form-builder-tutorial/HEAD/tsconfig.json --------------------------------------------------------------------------------