Skip to main content
Welcome to the Zequel contributor guide! Whether you’re fixing bugs, adding features, or improving documentation, your contributions are appreciated.

Ways to Contribute

Report Bugs

Found an issue? Open a bug report on GitHub with steps to reproduce.

Suggest Features

Have an idea? Submit a feature request describing your use case.

Write Code

Fix bugs, add features, or improve performance with pull requests.

Improve Docs

Help others by improving documentation and guides.

Quick Start

1

Fork and Clone

Fork the Zequel repository and clone it locally:
git clone https://github.com/YOUR_USERNAME/zequel.git
cd zequel
2

Install Dependencies

Install all required dependencies using npm:
npm install
This will also run postinstall to install Electron app dependencies.
3

Start Development Server

Launch the development server with hot reload:
npm run dev
The app will open automatically with developer tools available.
4

Make Your Changes

Create a feature branch and start coding:
git checkout -b feat/my-feature
Follow the project structure and coding conventions.
5

Test Your Changes

Run type checking and tests before committing:
npm run typecheck
npm run test:unit
6

Submit a Pull Request

Push your branch and open a PR against main with a clear description of your changes.

Development Workflow

Branch Strategy

Never commit directly to main. Always create a feature or fix branch and open a pull request.
Branch naming conventions:
  • feat/feature-name - New features
  • fix/bug-description - Bug fixes
  • chore/task-name - Maintenance tasks
  • docs/topic - Documentation updates

Commit Guidelines

Zequel uses Conventional Commits enforced by a Git hook:
# Format
<type>(<scope>): <description>

# Examples
feat: add dark mode support
fix(sidebar): resolve tree expand bug
chore(deps): update electron to v33
docs: improve connection guide
Allowed types: feat, fix, chore, docs, style, refactor, perf, test, build, ci, revert

Pre-commit Hooks

Husky runs these checks before each commit:
npm run typecheck  # Type check main and renderer
npm run test:unit  # Run unit tests
If checks fail, the commit will be rejected. Fix issues before committing.

Code Review Process

1

Automated Checks

GitHub Actions will run tests and type checking on your PR.
2

Maintainer Review

A maintainer will review your code for quality and correctness.
3

Address Feedback

Make requested changes by pushing additional commits to your branch.
4

Merge

Once approved, a maintainer will merge your PR into main.

Getting Help

Code of Conduct

Be respectful, inclusive, and constructive in all interactions. We’re building this together.

Next Steps

Development Setup

Set up your development environment

Project Structure

Learn the codebase organization

Architecture

Understand Electron architecture

Testing Guide

Write and run tests

Build docs developers (and LLMs) love