skills/gentleman-programming/engram/engram-project-structure

engram-project-structure

SKILL.md

When to Use

Use this skill when:

  • Creating a new package, file, or directory
  • Deciding where code belongs
  • Adding tests, templates, assets, or docs

Placement Rules

  1. Put behavior near its domain, not near the caller that happens to use it.
  2. Keep templates in internal/cloud/dashboard/*.templ and generated files checked in.
  3. Keep dashboard styling in internal/cloud/dashboard/static/styles.css unless a new static asset is clearly needed.
  4. Put HTTP handlers in server packages, not in store packages.
  5. Put persistence queries in store/cloudstore, not in handlers.

File Creation Rules

  • New route -> handler + tests in dashboard/server package
  • New DB behavior -> store/cloudstore code + focused tests
  • New UI partial/page -> templ component + generated _templ.go
  • New contributor guidance -> update docs/catalog in same change

Anti-Patterns

  • Do not mix SQL, HTML, and transport logic in one file.
  • Do not create utility packages for one-off helpers.
  • Do not add package layers unless they remove real coupling.
Weekly Installs
7
GitHub Stars
1.4K
First Seen
8 days ago
Installed on
opencode7
mcpjam6
roo6
antigravity6
windsurf6
zencoder6