The root EVOLV package was 175.8 MB because npm pack at the parent walks
the full file tree and IGNORES per-submodule .npmignore files. The
.gitignore fallback wasn't enough — it left .repo-mem/ (838 MB on disk),
.claude/, .agents/, .codex, every submodule's wiki + tests + simulation
harness, and the per-submodule CLAUDE.md files in the tarball.
This .npmignore mirrors .gitignore for the dev-artifact baseline and then
adds two more layers:
1. Repo-level dev tooling that .gitignore doesn't cover (tools/,
docker/, scripts/, test/, wiki/, .repo-mem/, .claude/, …).
2. Per-submodule dev-only trees under nodes/*/ — necessary because npm
pack at the root doesn't honour the submodule's own .npmignore.
After: 1.6 MB tarball, 498 files, runtime content only (entry .js + .html,
src/, package.json, examples/, generalFunctions datasets + coolprop.wasm,
per-node README/LICENSE/CONTRACT). Removes the
"npm warn gitignore-fallback" warning.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
59 lines
1.3 KiB
Plaintext
59 lines
1.3 KiB
Plaintext
# === Mirrors .gitignore — same deny list applies when packing for npm,
|
|
# kept verbatim so npm pack doesn't fall back to .gitignore silently
|
|
# (warning: gitignore-fallback). ===
|
|
node_modules/
|
|
package-lock.json
|
|
*.tgz
|
|
*.log
|
|
npm-debug.log*
|
|
.env
|
|
.env.*
|
|
.DS_Store
|
|
|
|
# === Memory + IDE state — NEVER ships (838 MB of .repo-mem alone) ===
|
|
.repo-mem/
|
|
.codex
|
|
.codex/
|
|
.claude/
|
|
.agents/
|
|
CLAUDE.md
|
|
CLAUDE.local.md
|
|
|
|
# === Repo-level dev tooling ===
|
|
tools/
|
|
docker/
|
|
docker-compose.yml
|
|
Dockerfile
|
|
.dockerignore
|
|
.gitea/
|
|
eslint.config.js
|
|
jest.config.js
|
|
scripts/
|
|
test/
|
|
|
|
# === Repo-level docs not needed by Node-RED consumers ===
|
|
wiki/
|
|
CONTRACTS.md
|
|
.gitmodules
|
|
|
|
# === Per-submodule dev-only trees ===
|
|
# `npm pack` at the parent walks the file tree directly and IGNORES each
|
|
# submodule's own .npmignore. So we mirror the per-submodule deny lists
|
|
# here explicitly, otherwise the root tarball still bundles every test
|
|
# tree, wiki, simulation harness, screen recording, etc. — that's how
|
|
# the root pack was 175 MB before this file existed.
|
|
nodes/*/test/
|
|
nodes/*/wiki/
|
|
nodes/*/simulations/
|
|
nodes/*/tools/
|
|
nodes/*/scripts/
|
|
nodes/*/CLAUDE.md
|
|
nodes/*/CLAUDE.local.md
|
|
nodes/*/.claude/
|
|
nodes/*/.codex/
|
|
nodes/*/.git
|
|
nodes/*/.gitignore
|
|
nodes/*/.npmignore
|
|
nodes/*/.eslintrc*
|
|
nodes/*/eslint.config.js
|