mdcms/CONTRIBUTING.md
Claude 05bcd4d78b
Add LICENSE, CONTRIBUTING.md, and SECURITY.md
Adds the Apache 2.0 license file, contributor guidelines, and security
policy. CONTRIBUTING.md reflects the existing branching convention and
dev workflow. SECURITY.md scopes the policy to mdcms-specific concerns.

https://claude.ai/code/session_01NrVot7Af6ciWRs7VJthQ15
2026-05-09 02:55:19 +00:00

50 lines
1.8 KiB
Markdown

# Contributing to mdcms
Thanks for your interest in contributing. This is a small, focused project — contributions that fit the existing scope and style are welcome.
## What to work on
Check the [open issues](https://github.com/kbenestad/mdcms/issues) for bugs and planned work. If you want to add something new, open an issue first to discuss it before writing code — this avoids wasted effort if the feature doesn't fit the project direction.
## Getting started
```bash
git clone https://github.com/kbenestad/mdcms.git
cd mdcms
pip install -e ".[dev]" # or: pip install click PyYAML certifi
```
Run the CLI directly during development:
```bash
python3 mdcms.py --help
```
For local site preview, run `python3 -m http.server 8800` inside a site directory and open `http://localhost:8800`. Do not open `index.html` directly — browsers block local file access.
## Making changes
- **CLI changes** (`mdcms.py`, `pyproject.toml`, `app/`, `.github/`) — branch from `main`, PR back to `main`.
- **Docs only** (`docs/`) — can go directly to `main`.
- Keep commits focused. One logical change per commit.
- Match the existing code style — single-file script, stdlib where possible, no unnecessary dependencies.
## Submitting a pull request
1. Fork the repo and create a branch from `main`.
2. Make your changes.
3. Test manually against a real site directory.
4. Open a PR with a clear description of what changed and why.
There are no automated tests yet, so describe what you tested in the PR description.
## Reporting bugs
Open a GitHub issue with:
- mdcms version (`mdcms --version`)
- OS and Python version
- The command you ran and the full output
## License
By contributing, you agree that your contributions will be licensed under the [Apache 2.0 License](LICENSE).