Skip to content

Commit 1c39207

Browse files
docs: add contributing guide
1 parent ea94062 commit 1c39207

1 file changed

Lines changed: 42 additions & 0 deletions

File tree

CONTRIBUTING.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Contributing to snip
2+
3+
Thanks for your interest! Here's how to get started.
4+
5+
## Quick Start
6+
7+
```bash
8+
git clone https://github.com/edouard-claude/snip.git
9+
cd snip
10+
make build
11+
make test
12+
```
13+
14+
## Adding a Filter
15+
16+
Filters are YAML files in `filters/`. No Go knowledge required.
17+
18+
1. Create `filters/your-tool.yaml` following existing filters as examples
19+
2. Add test fixtures in `tests/fixtures/`
20+
3. Run `make test`
21+
4. Open a PR
22+
23+
See the [Filter DSL documentation](https://github.com/edouard-claude/snip/wiki) for available actions.
24+
25+
## Code Changes
26+
27+
1. Fork and create a feature branch
28+
2. Write tests first (TDD)
29+
3. Run `make test && make lint`
30+
4. Commit with [conventional prefixes](https://www.conventionalcommits.org/): `fix:`, `feat:`, `docs:`, `ci:`, `test:`
31+
5. Open a PR against `master`
32+
33+
## Guidelines
34+
35+
- Keep PRs focused — one fix or feature per PR
36+
- All code, comments, and commits in English
37+
- Generated files (`db/`, `gql/generated.go`) should not be edited manually
38+
- Startup performance matters — snip intercepts every shell command
39+
40+
## Questions?
41+
42+
Open a [discussion](https://github.com/edouard-claude/snip/issues) or check existing issues.

0 commit comments

Comments
 (0)