Thank you for your interest in contributing to Qliphoth! This document provides guidelines and information for contributors.
By participating in this project, you agree to abide by our Code of Conduct.
- Check existing issues to avoid duplicates
- Use a clear, descriptive title
- Include steps to reproduce for bugs
- Specify your environment (OS, Sigil version, browser)
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature) - Make your changes
- Ensure tests pass (
npm run test:e2e) - Commit with clear messages
- Push to your fork
- Open a Pull Request
We follow conventional commits:
feat:New featuresfix:Bug fixesdocs:Documentation changesrefactor:Code refactoringtest:Test additions/changeschore:Maintenance tasks
- Follow existing patterns in the codebase
- Use Sigil's idiomatic conventions
- Include SPDX license headers in new files:
// SPDX-License-Identifier: MIT OR Apache-2.0 // Copyright (c) 2025 Daemoniorum, LLC
- Add tests for new features
- Ensure E2E tests pass before submitting
- Test across multiple browsers when relevant
- Clone the repository
- Install dependencies:
npm install - Start dev server:
npm run dev - Run tests:
npm run test:e2e
src/
core/ # Runtime, reconciliation, VDOM
components/ # Component system
hooks/ # React-style hooks
router/ # Client-side routing
state/ # State management
platform/ # Cross-platform abstraction
packages/
qliphoth-sys/ # System bindings
qliphoth-router/ # Router package
By contributing, you agree that your contributions will be licensed under the MIT OR Apache-2.0 dual license.
Open an issue or reach out to the maintainers. We're happy to help!