E
engram-project-structure
About engram-project-structure
A project-structure skill for contributors deciding where code and files belong. It provides placement rules for dashboard, server, and storage changes, along with file-creation guidance and anti-patterns.
Key features
- 01Domain-based code placement
- 02Dashboard template and asset locations
- 03Guidance for routes and database changes
- 04Rules for UI components and generated files
- 05Architecture anti-pattern guidance
Use cases
- 01Choosing a package for new behavior
- 02Adding a route with focused tests
- 03Creating a dashboard page or partial
- 04Keeping persistence logic out of handlers
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ gentleman-programming/ engram --skill engram-project-structureAfter installing, type/engram-project-structurein Claude Code to confirm it loaded.
Details
From the project READMEWhen 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
- Put behavior near its domain, not near the caller that happens to use it.
- Keep templates in
internal/cloud/dashboard/*.templand generated files checked in. - Keep dashboard styling in
internal/cloud/dashboard/static/styles.cssunless a new static asset is clearly needed. - Put HTTP handlers in server packages, not in store packages.
- 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.
Comments
Markdown supported