A modern, customizable Next.js application for collecting event feedback and automatically generating AI-powered testimonials.
- 📝 Comprehensive event feedback form with multiple sections:
- Basic Information
- Pre-Event Communication
- Event Day Feedback
- Overall Satisfaction
- Future Collaboration
- Written Testimonial
- 🤖 AI-powered testimonial generation using GPT-4
- ✏️ Testimonial review and editing interface
- 🔄 Multiple testimonial regeneration options
- 🌐 Webhook integration for data collection
- 📱 Responsive design with Tailwind CSS
- ✨ Type-safe with TypeScript and Zod validation
- 🎯 Customizable satisfaction ratings and yes/no responses
- Next.js 14
- TypeScript
- Tailwind CSS
- OpenAI GPT-4
- React
- Zod
- Clone the repository
git clone https://github.com/yourusername/event-survey-generator.git
cd event-survey-generator
- Install dependencies
npm install
- Create a
.env
file with the following variables:
OPENAI_API_KEY=your_openai_api_key
NEXT_PUBLIC_COMPANY_NAME=Your Company Name
WEBHOOK_URL=your_webhook_url
- Run the development server
npm run dev
OPENAI_API_KEY
: Your OpenAI API key for testimonial generationNEXT_PUBLIC_COMPANY_NAME
: Your company name (displayed in the UI)WEBHOOK_URL
: URL where survey data will be sent (e.g., Zapier webhook)
-
Basic Information
- Name
- Company
- Event Date
- Event Type
-
Pre-Event Communication
- Inquiry Response Time
- Phone Experience
- Quote Time
-
Event Day Feedback
- Arrival Time
- Setup
- Staff Performance
- Event Flow
- Product Quality
-
Overall Satisfaction
- Event Services
- Communication
- Professionalism
- Service Quality
-
Future Collaboration
- Booking Interest
- Improvement Suggestions
-
Written Testimonial
- Custom Testimonial
- Consent for Sharing
- Satisfaction: Satisfied, Neutral, Dissatisfied
- Yes/No Questions
- Free-form Text Fields
- Event Type Selection
src/
├── app/
│ ├── api/
│ │ ├── generate-testimonial/
│ │ └── submit-survey/
│ ├── layout.tsx
│ └── page.tsx
├── components/
│ ├── survey-form/
│ ├── testimonial-review/
│ └── success-message/
├── config/
│ └── constants.ts
└── lib/
└── types.ts
The application includes comprehensive TypeScript definitions for:
- Survey Data Structure
- Event Types
- Satisfaction Ratings
- Basic Info Validation
- Form Error Handling
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
MIT