Move prompt markdown files into prompts/ subdirectory
Update all internal URLs to reflect new paths.
This commit is contained in:
79
prompts/NEW_REPO_CHECKLIST.md
Normal file
79
prompts/NEW_REPO_CHECKLIST.md
Normal file
@@ -0,0 +1,79 @@
|
||||
# New Repo Checklist
|
||||
|
||||
Use this checklist when creating a new repository from scratch. Follow the steps
|
||||
in order. Full policies are at:
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/prompts/REPO_POLICIES.md`
|
||||
|
||||
Template files can be fetched from:
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/<path>`
|
||||
|
||||
## 1. Initialize
|
||||
|
||||
- [ ] `git init`
|
||||
- [ ] Ask the user for the license (MIT, GPL, or WTFPL)
|
||||
|
||||
## 2. First Commit (README only)
|
||||
|
||||
- [ ] Create `README.md` with all required sections:
|
||||
- [ ] **Description**: name, purpose, category, license, author
|
||||
- [ ] **Getting Started**: copy-pasteable code block
|
||||
- [ ] **Rationale**: why does this exist?
|
||||
- [ ] **Design**: how is it structured?
|
||||
- [ ] **TODO**: initial task list
|
||||
- [ ] **License**: matches chosen license
|
||||
- [ ] **Author**: [@sneak](https://sneak.berlin)
|
||||
- [ ] `git add README.md && git commit`
|
||||
|
||||
## 3. Scaffolding (feature branch)
|
||||
|
||||
- [ ] `git checkout -b initial-scaffolding`
|
||||
|
||||
### Fetch Template Files
|
||||
|
||||
- [ ] `.gitignore` — fetch from prompts repo, extend for language-specific
|
||||
artifacts
|
||||
- [ ] `.editorconfig` — fetch from prompts repo
|
||||
- [ ] `Makefile` — fetch from prompts repo, adapt targets for the project's
|
||||
language and tools
|
||||
- [ ] For JS/docs repos: `.prettierrc`, `.prettierignore`
|
||||
|
||||
### Create Project Files
|
||||
|
||||
- [ ] `LICENSE` file matching the chosen license
|
||||
- [ ] `REPO_POLICIES.md` — fetch from `prompts/REPO_POLICIES.md` in the prompts
|
||||
repo
|
||||
- [ ] `Dockerfile` and `.dockerignore`
|
||||
- Server: runs the application
|
||||
- Non-server: brings up dev environment and runs `make check`
|
||||
- Image pinned by sha256 hash with version/date comment
|
||||
- [ ] Language-specific:
|
||||
- [ ] Go: `go mod init sneak.berlin/go/<name>`, `.golangci.yml` (copy from
|
||||
`~/dev/upaas/.golangci.yml`)
|
||||
- [ ] JS: `yarn init`, `yarn add --dev prettier`
|
||||
- [ ] Python: `pyproject.toml`
|
||||
|
||||
### Configure Makefile
|
||||
|
||||
- [ ] `make test` — runs project tests (30-second timeout)
|
||||
- [ ] `make lint` — runs linter
|
||||
- [ ] `make fmt` — formats code (writes)
|
||||
- [ ] `make fmt-check` — checks formatting (read-only)
|
||||
- [ ] `make check` — prereqs: `test`, `lint`, `fmt-check`; must not modify files
|
||||
- [ ] `make docker` — builds Docker image
|
||||
- [ ] `make hooks` — installs pre-commit hook
|
||||
|
||||
## 4. Verify
|
||||
|
||||
- [ ] `make check` passes
|
||||
- [ ] `make docker` succeeds
|
||||
- [ ] No secrets in repo
|
||||
- [ ] No mutable image/package references
|
||||
- [ ] No unnecessary files in repo root
|
||||
- [ ] All dates written as YYYY-MM-DD
|
||||
|
||||
## 5. Merge and Set Up
|
||||
|
||||
- [ ] Commit, merge to `main`
|
||||
- [ ] `make hooks` to install pre-commit hook
|
||||
- [ ] Add remote and push
|
||||
- [ ] Verify `main` passes `make check`
|
||||
Reference in New Issue
Block a user