@skyf0xx/hedgehog-core-full-stack-app 1.0.0 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -0
- package/hedgehog-core.yaml +1 -11
- package/package.json +4 -1
- package/workspace/package.json +2 -0
- package/workspace/pnpm-lock.yaml +3000 -8316
- package/workspace/pnpm-workspace.yaml +1 -0
- package/workspace/tools/generators/hook/generator.ts +6 -3
package/README.md
CHANGED
|
@@ -39,3 +39,42 @@ A Hedgehog installation depends on this package for the `full-stack-app`
|
|
|
39
39
|
core rather than carrying its content directly. See the Hedgehog engine
|
|
40
40
|
(`@skyf0xx/hedgehog`) for the installer and build-graph tooling that
|
|
41
41
|
consumes it.
|
|
42
|
+
|
|
43
|
+
## Working on this core
|
|
44
|
+
|
|
45
|
+
This is a versioned npm package that the Hedgehog engine's `init` fetches
|
|
46
|
+
by name, carrying `full-stack-app`'s own agents, skills, a pre-built
|
|
47
|
+
workspace, and the `hedgehog-core.yaml` manifest that names all three to
|
|
48
|
+
the engine. See the engine repo
|
|
49
|
+
([`skyf0xx/hedgehog`](https://github.com/skyf0xx/hedgehog)) and its
|
|
50
|
+
[`ARCHITECTURE.md`](https://github.com/skyf0xx/hedgehog/blob/master/ARCHITECTURE.md)
|
|
51
|
+
for how `init` resolves and fetches a core package — that mechanism lives
|
|
52
|
+
there, not here.
|
|
53
|
+
|
|
54
|
+
No root `CLAUDE.md` lives in this repo. `CLAUDE.core.md` is a payload
|
|
55
|
+
file: its content is installed into a *consuming project's* generated
|
|
56
|
+
`CLAUDE.md`, filling that project's `{{CORE_SECTION}}` placeholder. A
|
|
57
|
+
plain root `CLAUDE.md` here would auto-load into any coding agent working
|
|
58
|
+
on this package itself, bleeding project-build context into a repo where
|
|
59
|
+
no Hedgehog build ever runs — build guidance for a project using this
|
|
60
|
+
core lives in that project's own generated `CLAUDE.md`, never here.
|
|
61
|
+
|
|
62
|
+
Changing this core means editing one of: the `workspace/` template (the
|
|
63
|
+
scaffold a Hedgehog install copies into a project's repo root), an agent
|
|
64
|
+
under `agents/`, a skill under `skills/`, or the vendored asset set under
|
|
65
|
+
`vendor-skills/GSAP`. `scripts/regenerate-full-stack-app-core.sh` is the
|
|
66
|
+
deterministic generator that rebuilds `workspace/` from scratch — run it
|
|
67
|
+
by hand after bumping a workspace dependency, then diff the result before
|
|
68
|
+
committing. A change here is a release of this package, not of the
|
|
69
|
+
engine: bump `package.json`'s version, commit, and merge to `main` — this
|
|
70
|
+
repo's own `publish.yml` tags and publishes from there.
|
|
71
|
+
|
|
72
|
+
When `workspace/`'s template needs a new piece of repeatable boilerplate
|
|
73
|
+
— a new module shape, a new generated file type — prefer building or
|
|
74
|
+
extending a generator over hand-authoring the output once. This core
|
|
75
|
+
already models the pattern: `workspace/tools/generators/` carries Nx
|
|
76
|
+
generators for every domain-module layer (`schema`, `contract`,
|
|
77
|
+
`repository`, `service`, `controller`, `hook`, `screen`) that
|
|
78
|
+
`nx-generate` drives instead of an agent writing that boilerplate
|
|
79
|
+
freehand. Other cores and future add-ons should model new scaffolding
|
|
80
|
+
against this one.
|
package/hedgehog-core.yaml
CHANGED
|
@@ -1,17 +1,7 @@
|
|
|
1
1
|
name: full-stack-app
|
|
2
2
|
flag: --ts-full-stack-app
|
|
3
3
|
language: typescript
|
|
4
|
-
engine: "^
|
|
5
|
-
selects_when: >
|
|
6
|
-
The description names persistent domain data with its own lifecycle:
|
|
7
|
-
something that gets created, changes state, gets queried back later, or
|
|
8
|
-
needs accounts/auth, background jobs, or a real app beyond a single
|
|
9
|
-
page. Data that gets stored is this core at any size — a todo list, a
|
|
10
|
-
notes app, a tracker of any kind — never talked down to browser-local
|
|
11
|
-
storage or a single-file page for sounding small. If the project has
|
|
12
|
-
both a marketing page and a real app behind it, this is still
|
|
13
|
-
full-stack-app: the page becomes routes inside apps/web, not a
|
|
14
|
-
separate project.
|
|
4
|
+
engine: "^6.0.0"
|
|
15
5
|
workspace: workspace/
|
|
16
6
|
template: CLAUDE.core.md
|
|
17
7
|
agents: [backend-eng, ux-planner, front-end-eng]
|
package/package.json
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyf0xx/hedgehog-core-full-stack-app",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"description": "Hedgehog's full-stack-app core: an Nx/pnpm/NestJS/Next.js workspace, backend-first domain module build discipline, and the agents and skills that drive it.",
|
|
5
5
|
"type": "module",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"release": "npm version patch -m \"chore: bump version to %s\""
|
|
8
|
+
},
|
|
6
9
|
"repository": {
|
|
7
10
|
"type": "git",
|
|
8
11
|
"url": "git+https://github.com/skyf0xx/hedgehog-core-full-stack-app.git"
|
package/workspace/package.json
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"@commitlint/cli": "^21.2.1",
|
|
11
11
|
"@commitlint/config-conventional": "^21.2.0",
|
|
12
12
|
"@eslint/js": "^10.0.1",
|
|
13
|
+
"@hedgehog/generators": "workspace:*",
|
|
13
14
|
"@nestjs/schematics": "^11.0.0",
|
|
14
15
|
"@nestjs/testing": "^11.0.0",
|
|
15
16
|
"@next/eslint-plugin-next": "^16.1.6",
|
|
@@ -89,6 +90,7 @@
|
|
|
89
90
|
"brace-expansion@2": "^2.1.4",
|
|
90
91
|
"brace-expansion@5": "^5.0.9",
|
|
91
92
|
"fast-uri": "^3.1.5",
|
|
93
|
+
"image-size": "^1.2.1",
|
|
92
94
|
"js-yaml@3": "^3.15.1",
|
|
93
95
|
"js-yaml@4": "^4.3.1",
|
|
94
96
|
"nanoid": "^3.3.17",
|