ConvoForm.com transforms traditional forms into interactive conversational experiences, powered by AI for an enhanced user journey. Think Google Forms, but more engaging and intuitive.
- AI-Powered Form Generation: Automatically generate comprehensive forms by describing your needs, streamlining the creation process.
- Real-time Form Editing and Preview: Edit forms with live changes previewed on the same page, providing immediate feedback.
- Customizable Submission Pages: Tailor the submission page with your organization's branding and personalized messages.
In the course of building it from scratch, I penned down some insightful pieces on Medium reflecting on my journey and learning, I hope these articles provide value to your coding journey.
- A Comprehensive Guide to Easily Switch from Prisma to Drizzle ORM
- Transitioning from Monorepo to Turborepo: My Development Journey with ConvoForm.com
- Frontend: Next.js for optimized server and client rendering.
- Backend: tRPC for type-safe API development.
- AI Integration: GPT-3.5-Turbo for dynamic form generation and response analysis.
- Real-time updates: Socket.io for live form progress tracking.
Follow these steps to set up the project locally on your machine.
-
Make sure you have the following installed:
-
You need a PostgreSQL database instance to store the customer data. Create a free superbase Postgres instance at Supabase.
-
Clerk is used for Authentication and User Management. Please make sure you Enable organizations in Organizations Settings within Clerk settings.
-
Get your OpenAI key at OpenAI Dashboard
-
You need a Redis Database from Upstash (Optional if you want rate limiting)
-
Application Performance Monitoring & Error Tracking is done using Sentry
git clone https://github.com/growupanand/ConvoForm.git
cd ConvoForm
pnpm install
-
- Copy the .env.example file to .env.local file.
cp .env.example .env.local
- Open the
.env.local
file and update the necessary environment variables. - Setup database by running migrations
pnpm drizzle:apply-migration
- Copy the .env.example file to .env.local file.
pnpm run dev
Visit http://localhost:3000 in your browser to see the application.
pnpm run build
Feel free to contribute to the development by opening issues, providing feedback, or submitting pull requests. see the CONTRIBUTING.md for more details.
This project is licensed under the MIT License.