A streamlined project management application for Comic Relief campaigns, built with React, TypeScript, and Tailwind CSS.
- Landing Page: Central hub with workflow diagram and form options
- Quick Kick-off Form: Simplified form for rapid project setup
- Full Production Brief: Comprehensive project planning form
- Data Request Brief: Dedicated form for data analysis requests
- Technology Briefs: Six specialized brief types with descriptions
- Zapier Integration: Automatic webhook submissions for form data
- Responsive Design: Works on desktop and mobile devices
- Frontend: React 18 with TypeScript
- Styling: Tailwind CSS v4
- Build Tool: Vite
- UI Components: Radix UI + custom shadcn/ui components
- Icons: Lucide React
- Deployment: Vercel
- Node.js 18+
- npm or yarn
- Clone the repository:
git clone [your-repo-url]
cd comic-relief-project-management- Install dependencies:
npm install- Start the development server:
npm run dev- Open your browser to
http://localhost:3000
npm run buildnpm run preview- Push your code to a GitHub repository
- Go to Vercel Dashboard
- Click "Add New..." → "Project"
- Import your GitHub repository
- Vercel will automatically detect the Vite framework
- Click "Deploy"
- Install Vercel CLI:
npm i -g vercel- Deploy from your project directory:
vercel- Follow the prompts to configure your deployment
The application automatically formats all form submissions for seamless Jira integration through Zapier.
All forms submit to: https://hooks.zapier.com/hooks/catch/12809750/2vn5sae/
Each submission includes:
{
"jira": {
"summary": "Full Production Brief: Project Name",
"description": "Formatted Jira description",
"issueType": "Epic|Story|Task",
"priority": "High|Medium|Low",
"labels": ["form-type", "campaign", "directorate"],
"customFields": {
"submitter_name": "John Smith",
"project_name": "Campaign Name",
// ... 40+ mapped form fields
}
},
"formData": { /* original form data */ },
"submissionTimestamp": "2024-01-15T10:30:00.000Z"
}| Form Type | Jira Issue Type | Priority | Use Case |
|---|---|---|---|
| Full Production Brief | Epic | High | Comprehensive project planning |
| Quick Kick-off Form | Story | Medium | Initial project setup |
| Data Request Brief | Task | Medium | Analytics and reporting |
- Webhook Trigger: Use the provided URL
- Jira Action: Map
{{jira__summary}},{{jira__description}},{{jira__issueType}} - Custom Fields: All form fields available as
{{jira__customFields__field_name}}
- Detailed Setup: See
/docs/JIRA_INTEGRATION.md - Quick Reference: See
/docs/ZAPIER_SETUP.md - Field Mappings: See
/lib/jira-field-mapping.ts
- 40+ Standardized Fields: All form inputs mapped to Jira-friendly names
- Automatic Ticket Descriptions: Rich, formatted descriptions with all project details
- Smart Categorization: Automatic issue types, priorities, and labels
- Easy Configuration: Pre-structured for immediate Zapier → Jira setup
├── App.tsx # Main application component
├── src/
│ └── main.tsx # React entry point
├── components/
│ ├── LandingPage.tsx # Main landing page
│ ├── ComicReliefForm.tsx # Full production brief form
│ ├── ComicReliefKickOffForm.tsx # Quick kick-off form
│ ├── FormComponents.tsx # Reusable form components
│ ├── FormProvider.tsx # Form state management
│ ├── ProjectManagementComponents.tsx # Project setup flow
│ └── ui/ # shadcn/ui components
├── styles/
│ └── globals.css # Global styles and Tailwind config
├── lib/
│ └── utils.ts # Utility functions
└── public/ # Static assets
- Main navigation hub
- Workflow diagram display
- Form selection cards
- Technology briefs section
- Comprehensive project brief form
- Conditional sections based on user input
- Budget allocation tables
- Asset requirements
- Simplified quick-start form
- Essential planning fields only
- Project management resource creation
- Pre-populated documentation templates
No environment variables are required for basic deployment. The Zapier webhook URL is hardcoded in the forms.
For development with different webhooks, you could add:
VITE_ZAPIER_WEBHOOK_URL=your-webhook-url
- Chrome (recommended)
- Firefox
- Safari
- Edge
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is proprietary to Comic Relief.
For technical issues or questions about deployment, contact the development team.