85 lines
2.2 KiB
Markdown
85 lines
2.2 KiB
Markdown
# Contributing to `docmd`
|
|
|
|
|
|
Thank you for your interest in contributing to `docmd`! We appreciate all contributions, from bug fixes and documentation improvements to new features and design suggestions.
|
|
|
|
## Development Environment
|
|
|
|
`docmd` is a monorepo managed with [pnpm](https://pnpm.io/).
|
|
|
|
### Prerequisites
|
|
|
|
- **Node.js**: v22.x or later (LTS recommended)
|
|
- **pnpm**: v10.x or later
|
|
|
|
### Project Setup
|
|
|
|
Clone the repository and set up the development environment:
|
|
|
|
```bash
|
|
git clone https://github.com/docmd-io/docmd.git
|
|
cd docmd
|
|
pnpm prep
|
|
```
|
|
|
|
To also link the local `docmd` command globally for testing in other projects:
|
|
|
|
```bash
|
|
pnpm prep --link
|
|
```
|
|
|
|
### Local Development
|
|
|
|
Run the documentation site while watching for changes in the core engine:
|
|
|
|
```bash
|
|
pnpm run dev
|
|
```
|
|
|
|
To watch internal source files (engine, templates, and plugins), set the `DOCMD_DEV` environment variable:
|
|
|
|
```bash
|
|
DOCMD_DEV=true pnpm run dev
|
|
```
|
|
|
|
## Quality Standards
|
|
|
|
Before submitting a Pull Request, please ensure your changes pass the verification suite:
|
|
|
|
```bash
|
|
pnpm verify
|
|
```
|
|
|
|
### Commit Guidelines
|
|
|
|
We use [Conventional Commits](https://www.conventionalcommits.org/). Please prefix your commit messages with:
|
|
- `feat:` (New features)
|
|
- `fix:` (Bug fixes)
|
|
- `docs:` (Documentation changes)
|
|
- `refactor:` (Code changes that neither fix bugs nor add features)
|
|
|
|
### Source Headers
|
|
|
|
All new files within the `packages/` directory MUST include the standard project copyright header to maintain consistency and compliance.
|
|
|
|
```javascript
|
|
/**
|
|
* --------------------------------------------------------------------
|
|
* docmd : the minimalist, zero-config documentation generator.
|
|
*
|
|
* @package @docmd/core (and ecosystem)
|
|
* @website https://docmd.io
|
|
* @repository https://github.com/docmd-io/docmd
|
|
* @license MIT
|
|
* @copyright Copyright (c) 2025-present docmd.io
|
|
*
|
|
* [docmd-source] - Please do not remove this header.
|
|
* --------------------------------------------------------------------
|
|
*/
|
|
```
|
|
|
|
## GitHub Workflow
|
|
|
|
1. **Fork and Branch**: Create a feature branch from the latest `main`.
|
|
2. **Verify**: Ensure `pnpm verify` returns `🛡️ docmd is ready for production!`.
|
|
3. **Pull Request**: Open a PR with a clear description of the problem solved or the feature added. |