File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11# Contributing to spin
22
3+ ## Design goals
4+
5+ Spin aims to stay:
6+
7+ - Fast
8+ - Language-agnostic
9+ - Git-first
10+ - Decentralized
11+ - Dependency-free
12+
313## Quick start
414
515``` sh
616task build # compiles to ./bin/spin
717task test # runs go test ./... -count=1
818```
919
10- Or without Task :
20+ Task is optional. You can run the commands directly :
1121
1222``` sh
1323go build -o bin/spin .
@@ -30,17 +40,23 @@ contributions — `go vet` catches the critical issues.
3040
3141## Code conventions
3242
33- - ** Single binary, no plugins. ** No daemon, no embedded templates.
43+ - ** Keep Spin small. ** Single binary, no plugins, no daemon, no embedded templates.
3444- ** Language-agnostic.** Templates target any stack. spin only owns the
3545 load / prompt / render / hook pipeline.
3646- ** Templates are external.** No defaults shipped with the binary.
3747- ** Read files before editing them.** Match existing indentation (tabs),
3848 error formats, and comment style.
39- - ** Context propagation.** All I/O functions accept ` context.Context ` .
49+ - ** Context propagation.** Pass ` context.Context ` through long-running or I/O operations .
4050- ** Add tests** for new functionality. Use ` go test -count=1 ` locally.
4151- ** No comments** unless explaining * why* , not * what* . The code should
4252 be self-documenting.
4353
54+ ## Pull requests
55+
56+ - Keep changes focused.
57+ - Open an issue before making large architectural changes.
58+ - Update documentation when behavior changes.
59+
4460## Project structure
4561
4662| Directory | Purpose |
You can’t perform that action at this time.
0 commit comments