Overview
Contributing a template to GitFolio helps the community and gets your work featured in the official template gallery. This guide covers the entire contribution process from development to submission.Before You Start
All contributed templates must be original work or properly licensed. Templates become part of the GitFolio open-source project.
Contribution Requirements
Code Quality
- TypeScript strict mode compliant
- ESLint warnings resolved
- Clean, commented code
Design Quality
- Fully responsive (mobile/tablet/desktop)
- Accessible (WCAG 2.1 AA)
- Professional appearance
Functionality
- All DATA fields supported
- Dark/light themes (or document limitation)
- No build errors
Documentation
- Template description
- Screenshots/video preview
- Special features noted
Development Workflow
1. Fork and Clone
2. Create a Branch
Branch naming convention
Branch naming convention
Use the format
template/template-name for template contributions. For example:template/neon-dreamstemplate/minimalist-protemplate/developer-showcase
3. Install Dependencies
4. Create Your Template
Follow the structure in Creating Templates:5. Export Your Template
Add topackages/templates/src/Templates/index.ts:
packages/templates/src/Templates/index.ts
6. Test Locally
packages/renderer/app/page.tsx to preview:
7. Verify Build
Ensure production build succeeds:Code Style and Standards
TypeScript Guidelines
Component Best Practices
Styling Guidelines
Accessibility Standards
Responsive Design
Adding Template Metadata
Add your template topackages/templates/src/metaData.ts:
packages/templates/src/metaData.ts
Metadata Fields Explained
id (required)
id (required)
Unique identifier using kebab-case. Example:
"minimalist-pro", "neon-dreams"title (required)
title (required)
Display name for your template. Keep it short and memorable.
description (required)
description (required)
1-2 sentence description highlighting unique features. Be concise but descriptive.
thumbnail
thumbnail
URL to desktop preview image (PNG/JPG, recommended 1920x1080). Upload to GitFolio’s CDN or provide your own.
video
video
URL to video preview (MP4). Shows template in action. Optional but recommended.
theme
theme
Theme support:
"dark", "light", or "both". Indicates which themes your template supports.mobileDevice
mobileDevice
Preview device for mobile:
"Iphone15Pro" or "Android"Creating Preview Assets
Desktop Screenshot
- Set viewport to 1920x1080
- Enable your template with dummy data
- Take a clean screenshot
- Save as PNG for best quality
Mobile Screenshot
- Use browser DevTools device emulation
- Select iPhone 15 Pro or Android device
- Capture screenshot
- Save as PNG
Video Preview (Optional)
- Record 10-15 second scrolling demo
- Show key sections (hero, projects, experience)
- Export as MP4, max 5MB
- 1920x1080 resolution recommended
Preview assets will be hosted on GitFolio’s CDN after your PR is merged. You can provide temporary URLs in your PR.
Submitting Your Template
Pre-submission Checklist
Code Quality
- All TypeScript errors resolved
- No ESLint warnings
- Code follows style guide
- Components are properly typed
Functionality
- Template renders with dummy data
- All DATA fields are utilized
- Handles missing/optional data gracefully
- Production build succeeds
Design
- Responsive on mobile (375px, 428px)
- Responsive on tablet (768px, 1024px)
- Responsive on desktop (1440px+)
- Theme switching works (if supported)
- Accessible (keyboard navigation, ARIA labels)
Create Pull Request
Add [Your Template Name] Template
Description Template:
Review Process
After submission:- Automated Checks - CI/CD runs build and lint tests
- Code Review - Maintainers review code quality and design
- Testing - Template tested on multiple devices/browsers
- Feedback - Requested changes or approval
- Asset Upload - Preview assets uploaded to CDN
- Merge - Template added to official gallery
How long does review take?
How long does review take?
Typically 3-7 days. Complex templates or those needing revisions may take longer. Be responsive to feedback for faster approval.
After Your Template is Merged
Recognition
- Your template appears in the official GitFolio template gallery
- Credit given in template metadata and documentation
- Author attribution in the template showcase
Maintenance
As a contributor, you may be asked to:- Fix bugs specific to your template
- Update template when core types change
- Respond to user feedback
Common Submission Issues
Build errors
Build errors
Issue: Template builds locally but fails in CISolution: Run
pnpm run build --filter=renderer and fix all TypeScript errors. Ensure no warnings in strict mode.Missing responsiveness
Missing responsiveness
Issue: Template looks good on desktop but breaks on mobileSolution: Use Tailwind’s responsive prefixes (
sm:, md:, lg:). Test at all breakpoints.Accessibility issues
Accessibility issues
Issue: Template fails accessibility reviewSolution: Add alt text to images, use semantic HTML, ensure keyboard navigation, add ARIA labels to interactive elements.
Theme switching problems
Theme switching problems
Issue: Colors don’t change when switching themesSolution: Use Tailwind’s theme-aware classes (
bg-background, text-foreground) or dark mode variants (dark:bg-gray-900).Getting Help
Need assistance with your contribution?- GitHub Issues: Ask questions at GitFolio Issues
- Discussions: Join template discussions on GitHub Discussions
- Discord: Join the GitFolio community (if available)
Code of Conduct
All contributors must:- Be respectful and professional
- Accept constructive feedback gracefully
- Respect maintainer decisions
- Follow the project’s code of conduct
By contributing, you agree that your template will be released under the same open-source license as GitFolio.
Next Steps
Create Your Template
Start building your custom template
Template Architecture
Learn about template structure