A modern web application that leverages AI to generate dynamic forms instantly with google form and xml export.
Formify turns a plain-language description into a complete form structure using AI, then exports it to Google Forms or XML. It cuts form building down to a single prompt.
test-1_comp.mp4
Generated form preview with a custom prompt
Generated form preview with another custom prompt
- AI-Powered Generation: Create forms using simple text descriptions
- Real-time Preview: Instantly view your generated forms [todo]
- Theme Support: Built-in dark/light mode
- Google Forms Export: Export your forms directly to Google Forms
- XML Export: Export your forms as XML
- Responsive Design: Fully responsive across all devices [todo]
- Vite
- Tailwind CSS
- Shadcn UI
- React Hook Form
- React Router
- Express.js server
- OpenAI API integration
- Google Forms API integration
- Hugging Face API integration
- Clone the repository:
git clone https://github.com/TechTronixx/Formify-FormGenerator.git
cd Formify-FormGenerator- Install Bun (if not already installed):
curl -fsSL https://bun.sh/install | bash- Install dependencies:
bun install- Set up environment variables:
cp .env.example .envFill in your .env file with your credentials.
- Start development servers:
# Start both frontend and backend
bun run dev:all
# Or start them separately:
bun run dev # Frontend only
bun run server # Backend only- Copy the example environment file:
cp .env.example .env- Update the
.envfile with your credentials:
VITE_HUGGINGFACE_API_KEY= # Get from Hugging Face
OPENAI_API_KEY= # Get from OpenAI
# Google OAuth (Required for Google Forms export)
GOOGLE_CLIENT_ID= # Get from Google Cloud Console
GOOGLE_REDIRECT_URI= # Default: http://localhost:3001/oauth2callback
GOOGLE_REFRESH_TOKEN= # Generated using 'bun run token'- For Google Forms integration, follow the "Getting Google Forms Refresh Token" section below to obtain the necessary credentials.
To use the Google Forms export feature, you'll need to:
- Set up your Google Cloud Project and enable the Google Forms API
- Create OAuth 2.0 credentials (Client ID and Secret)
- Add them to your
.envfile - Run the token script:
bun run token
- Follow the prompts to authorize the application
- Add the resulting refresh token to your
.envfile asGOOGLE_REFRESH_TOKEN
bun run dev- Start frontend development serverbun run server- Start backend serverbun run dev:all- Start both frontend and backendbun run build- Build for productionbun run preview- Preview production buildbun run token- Generate Google OAuth refresh token
- 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
This project is licensed under the GNU Affero General Public License - see the LICENSE file for details.

