Skip to content

drasticstatic/my-template

Repository files navigation

my-template

Reusable repo scaffolding — .gitignore, .augmentignore, CLAUDE.md, sync workflows, gitexporter config, deploy scripts, and branch protection rulesets.

Use this template License: MIT

Click Use this template above (or the green button at the top of this page) to create a new repo pre-loaded with all scaffolding. Or copy individual files as needed.


What's Included

File Purpose
.gitignore Master ignore rules — secrets, OS files, build artifacts, Node, Python, Solidity, React/Vite
.augmentignore Controls what Augment Code indexes — includes dependency context, excludes noise
CLAUDE.md Stub for Claude Code CLI persistent instructions — fill in per-repo
.github/dependabot.yml Grouped Dependabot version updates — npm + GitHub Actions
workflow-templates/sync-public-allowlist.yml Sync private → public via allowlist (strict — everything private by default) — copy to .github/workflows/ in your repo
workflow-templates/sync-public-excludelist.yml Sync private → public via exclude list (open — everything public except named paths) — copy to .github/workflows/ in your repo
gitexporter.config.json Local gitexporter config — selective commit-history-preserving public preview
scripts/deployTest.sh Deploy a dated static snapshot of a Vite app to a new GitHub Pages repo
scripts/syncDocs.sh Selectively rsync documentation from a private repo to a public docs repo
branch-protection/ruleset.json GitHub branch protection ruleset — prevents force-push and deletion on main

Workflow Patterns

Sync to public repo — which model to use?

Model Use when File
Allowlist Most content is private; a small set is safe to publish sync-public-allowlist.yml
Exclude list Most content is public; a named set must stay private sync-public-excludelist.yml

Both use git filter-repo --invert-paths under the hood. The allowlist model adds a validation step that fails CI if an unclassified root-level path appears — forces an explicit privacy decision on every new file.

gitexporter vs sync-public.yml

Tool Mechanism History
sync-public.yml (GitHub Actions) Runs on push, rewrites and force-pushes to public repo Preserved via filter-repo
gitexporter Local CLI tool, run manually Preserved — traverses full commit tree

Use sync-public.yml for automated continuous sync. Use gitexporter for a one-time or on-demand local preview before the workflow is set up.


Making Your Own Repo a Template

Once you've customised this scaffolding for your own use, you can share it the same way — mark your repo as a GitHub Template Repository so others get the green "Use this template" button too.

Via GitHub CLI (one command):

gh api repos/YOUR_USERNAME/YOUR_REPO --method PATCH --field is_template=true

Via UI: Repo → Settings → General → check Template repository

Then add this badge to your README (swap in your own repo URL):

[![Use this template](https://img.shields.io/badge/Use_this_template-2ea44f?style=flat)](https://github.com/YOUR_USERNAME/YOUR_REPO/generate)

The /generate path takes visitors directly to the "create repo from template" screen — useful to link from docs, READMEs, or share with peers.


Related How-To Guides

Full setup walkthroughs live in the drasticstatic profile repo:


Maintained by drasticstatic

About

Reusable repo scaffolding — .gitignore, .augmentignore, CLAUDE.md stub, sync-public workflows, gitexporter config, deployTest & syncDocs scripts, branch protection ruleset

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages