Welcome Contributors
Thank you for your interest in contributing to ZapDev! This guide will help you get started with contributing to our AI-powered development platform.Getting Started
Before you begin contributing, make sure you have the following prerequisites installed:- Bun (package manager - required)
- Docker (for E2B template builds)
- Node.js 18+ (for compatibility)
- PostgreSQL or access to a database URL
Initial Setup
Configure Environment
Copy the example environment file and fill in your credentials:Required environment variables:
DATABASE_URL- PostgreSQL connection stringOPENROUTER_API_KEY- Vercel AI Gateway keyE2B_API_KEY- E2B sandbox API keyNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY- Clerk auth public keyCLERK_SECRET_KEY- Clerk auth secret keyINNGEST_EVENT_KEY- Inngest event keyINNGEST_SIGNING_KEY- Inngest signing key
Build E2B Template
Before running the application, build the E2B sandbox template:After building, update the template name in
src/inngest/functions.ts:22Development Workflow
Making Changes
-
Create a Feature Branch
-
Make Your Changes
- Follow the code conventions (see conventions.mdx)
- Write tests for new features
- Ensure your changes don’t break existing tests
-
Run Tests
-
Run Linter
-
Build Locally
Commit Guidelines
We follow conventional commit messages:feat:- New featuresfix:- Bug fixesdocs:- Documentation changesstyle:- Code style changes (formatting, etc.)refactor:- Code refactoringtest:- Test additions or changeschore:- Build process or auxiliary tool changes
Pull Request Process
Create Pull Request
- Go to the repository on GitHub
- Click “New Pull Request”
- Select your feature branch
- Fill in the PR template with:
- Description of changes
- Related issue numbers
- Screenshots (if UI changes)
- Testing performed
Project Structure
Understanding the codebase structure will help you navigate and contribute effectively:Where to Contribute
Areas We Need Help
- Bug Fixes - Check the issues labeled
bug - Features - Look for issues labeled
enhancement - Documentation - Help improve our docs (issues labeled
documentation) - Tests - Increase test coverage
- Performance - Optimize E2B sandbox initialization
- Framework Support - Improve Angular, Vue, Svelte, React templates
Good First Issues
Look for issues labeledgood first issue - these are great for newcomers!
Code of Conduct
- Be respectful and inclusive
- Provide constructive feedback
- Focus on the code, not the person
- Help create a welcoming environment for all contributors
Getting Help
- Questions? Open a discussion on GitHub
- Bugs? Open an issue with reproduction steps
- Feature Ideas? Open an issue with your proposal
Additional Resources
- Testing Guide - Learn about our testing setup
- Code Conventions - Follow our coding standards
- Development Guide - Technical development details
- README - Project overview
Thank you for contributing to ZapDev! Your efforts help make AI-powered development accessible to everyone.