An AI-Powered Google Forms Creation System using CrewAI
FormCrafter is an intelligent multi-agent system that automates the creation of Google Forms based on natural language requirements. Powered by CrewAI, it leverages the collaborative intelligence of specialized AI agents to understand your form requirements and generate professional Google Forms automatically.
- Requirement Understanding Agent: Analyzes and comprehends form requirements from natural language descriptions
- Form Creation Agent: Translates requirements into well-structured Google Forms with appropriate questions
- Natural Language Processing: Input your form requirements in plain English
- Intelligent Question Generation: Automatically creates relevant questions based on context
- Professional Form Structure: Generates clean, user-friendly forms with proper formatting
- Real-time Form Creation: Direct integration with Google Forms API for instant form deployment
- Contextual Understanding: Analyzes complex requirements and asks clarifying questions when needed
- Flexible Question Types: Supports various question formats (text, multiple choice, scales, etc.)
- User Preference Integration: Incorporates user-specific preferences and context
- Batch Processing: Can handle multiple form creation requests efficiently
- Direct API Integration: Seamlessly connects with Google Forms API
- Instant Deployment: Forms are created and ready for use immediately
- Shareable Links: Generates public URLs for easy form distribution
- Professional Formatting: Maintains Google Forms' native look and feel
FormCrafter follows a modular, agent-based architecture:
FormCrafter/
βββ π§ Requirement Understanding Agent
β βββ Analyzes input requirements
β βββ Extracts key information
β βββ Identifies missing details
βββ π οΈ Form Creation Agent
βββ Designs form structure
βββ Creates Google Forms
βββ Generates shareable URLs
- Python: Version 3.10 to 3.13
- Google Cloud Project: With Forms API enabled
- Service Account: JSON credentials file
- GEMINI_API_KEY: For AI agent functionality
# Clone the repository
git clone https://github.com/achuajays/FormCrafter.git
cd FormCrafter
# Install UV package manager (if not already installed)
pip install uv
# Install dependencies
crewai installCreate a .env file in the root directory:
MODEL=model
GEMINI_API_KEY=api_key
SERVICEJSON=/path/to/your/google-service-account.json- Create a Google Cloud Project
- Enable the Google Forms API
- Create a Service Account
- Download the JSON credentials file
- Set the
SERVICEJSONenvironment variable to the file path
# Execute the form creation process
crewai run# Example input for creating a feedback form
inputs = {
'topic': """
Create a customer feedback form with the following fields:
- Customer name
- Service rating (1-10 scale)
- Comments and suggestions
- Contact preference (email/phone)
"""
}inputs = {
'topic': """
Design an event registration form for a tech conference:
- Attendee full name and email
- Company and job title
- Session preferences
- Dietary restrictions
- T-shirt size
"""
}inputs = {
'topic': """
Create a market research survey about mobile app usage:
- Demographics (age, location, occupation)
- Current apps used
- Feature preferences
- Usage frequency
- Satisfaction ratings
"""
}Edit src/googleform/config/agents.yaml to customize agent behaviors:
requirement_understander:
role: Custom Requirements Analyst
goal: Your specific goal here
backstory: Custom backstory for contextUpdate src/googleform/config/tasks.yaml for specific task requirements:
form_creation_task:
description: Custom task description
expected_output: Specific output formatCreate additional tools in src/googleform/tools/ for extended functionality:
class CustomFormTool(BaseTool):
name: str = "Custom Tool Name"
description: str = "Tool description"
# Implementation here- Customer feedback collection
- Employee surveys and evaluations
- Event registration management
- Lead generation forms
- Product research questionnaires
- Course evaluation forms
- Student registration
- Assignment submissions
- Research data collection
- Workshop feedback
- Patient intake forms
- Research survey creation
- Appointment scheduling
- Health assessment questionnaires
- Clinical trial data collection
- Contact forms for websites
- Market research surveys
- Product feedback collection
- Newsletter subscriptions
- Contest entry forms
| Variable | Description | Required |
|---|---|---|
GEMINI_API_KEY |
OpenAI API key for AI agents | Yes |
SERVICEJSON |
Path to Google Service Account JSON | Yes |
- Temperature: Control creativity level of responses
- Max Iterations: Limit agent processing cycles
- Memory: Enable conversation context retention
- Knowledge Base: Add domain-specific information
FormCrafter generates:
- Live Google Form: Immediately accessible via URL
- Form Configuration: Detailed breakdown of form structure
- Execution Report: Summary of the creation process
- Shareable Links: Ready-to-distribute form URLs
We welcome contributions! Please see our contributing guidelines:
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
- CrewAI Documentation: docs.crewai.com
- Google Forms API: developers.google.com/forms
- GitHub Issues: Report bugs and request features
- Community Discord: Join our development community
This project is licensed under the MIT License - see the LICENSE file for details.
- CrewAI Team: For the powerful multi-agent framework
- Google: For the comprehensive Forms API
- OpenAI: For the underlying language models
- Community Contributors: For ongoing improvements and feedback
Ready to craft intelligent forms? π―
Get started with FormCrafter today and transform how you create and deploy Google Forms with the power of AI!