Skip to content

Commit 3c8ee33

Browse files
authored
🔔 [readme] expand .just/README.md to explain features (#42)
1 parent 2704736 commit 3c8ee33

File tree

1 file changed

+65
-3
lines changed

1 file changed

+65
-3
lines changed

.just/README.md

Lines changed: 65 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,75 @@
22

33
Just recipe files live in this directory.
44

5+
## Source of Truth
6+
57
The master copy of these project files lives in the
68
[FINI template-repo](https://github.com/fini-net/template-repo)
79
and you should be able to copy them into your
810
project for updates.
911

10-
We use the [repos-summary script](https://github.com/chicks-net/chicks-home/blob/main/bin/repos-summary)
12+
You should read our
13+
[release notes](https://github.com/fini-net/template-repo/blob/main/.just/RELEASE_NOTES.md)
14+
to learn more about the history of how we have evolved the github PR process.
15+
16+
We use the
17+
[repos-summary script](https://github.com/chicks-net/chicks-home/blob/main/bin/repos-summary)
1118
to see which of our repos need updates of the just files.
1219

13-
You can read our [release notes](RELEASE_NOTES.md) to learn more about
14-
the history of how we have evolved the github PR process.
20+
## Included Just Files
21+
22+
### gh-process.just - Git/GitHub Workflow Automation
23+
24+
Core PR lifecycle management with these features:
25+
26+
- **Branch creation** - `just branch <name>` creates dated branches in `$USER/YYYY-MM-DD-<name>` format
27+
- **PR creation** - `just pr` creates PRs using first commit message as title, all commits in body
28+
- **PR checks monitoring** - Watches GitHub Actions checks with 5-second polling
29+
- **AI integration** - Displays GitHub Copilot and Claude Code review comments after checks complete
30+
- **PR merge** - `just merge` squash merges, deletes remote branch, returns to main, and pulls latest
31+
- **Branch escape** - `just sync` returns to main branch and pulls latest changes
32+
- **Web viewing** - `just prweb` opens current PR in browser
33+
- **Releases** - `just release <version>` creates GitHub releases with auto-generated notes
34+
- **Sanity checks** - Hidden recipes (`_on_a_branch`, `_has_commits`, `_main_branch`) prevent mistakes
35+
- **Pre-PR hooks** - Optional integration with `pr-hook.just` for project-specific automation
36+
37+
### compliance.just - Repository Health Checks
38+
39+
Custom compliance validation for GitHub community standards:
40+
41+
- **README.md** validation
42+
- **LICENSE** file check
43+
- **Code of Conduct** verification (`.github/CODE_OF_CONDUCT.md`)
44+
- **Contributing Guide** check (`.github/CONTRIBUTING.md`)
45+
- **Security Policy** validation (`.github/SECURITY.md`)
46+
- **Pull Request Template** check (`.github/pull_request_template.md`)
47+
- **Issue Templates** directory validation (`.github/ISSUE_TEMPLATE/`)
48+
- **Repository description** check via GitHub API
49+
- **CODEOWNERS** file validation
50+
- **`.gitignore`** file check
51+
- **`.gitattributes`** file verification
52+
- **`justfile`** presence check
53+
- **`.editorconfig`** validation
54+
55+
All checks include colorized output with helpful (and sometimes sarcastic) messages.
56+
57+
### shellcheck.just - Bash Script Linting
58+
59+
Automated shellcheck validation for bash scripts in just recipes:
60+
61+
- **Automatic detection** - Scans all justfiles in repo (`justfile` and `.just/*.just`)
62+
- **Script extraction** - Uses awk to extract bash scripts (looks for `#!/usr/bin/env bash` or `#!/bin/bash`)
63+
- **Temporary file handling** - Creates temp files for each script and cleans up on exit
64+
- **Shellcheck execution** - Runs shellcheck with `-x -s bash` flags for thorough validation
65+
- **Detailed reporting** - Shows which file and recipe each issue is in, with colorized output
66+
- **Statistics** - Reports total scripts checked and issues found
67+
- **Exit codes** - Returns 1 if issues found, 0 if all scripts pass
68+
69+
### pr-hook.just - Pre-PR Hook Template
70+
71+
Optional pre-PR automation hook:
72+
73+
- **Called automatically** - Invoked by `just pr` if this file exists
74+
- **Placeholder implementation** - Currently just prints a message
75+
- **Customizable** - Replace with project-specific tasks (e.g., Hugo rebuilds, asset compilation)
76+
- **Hidden recipe** - Uses `_pr-hook` naming to indicate internal use only

0 commit comments

Comments
 (0)