canvas is an optional dependency of jsdom used for testing. It fails to
compile on Alpine/musl due to missing <cstdint> includes in canvas 3.x.
Since canvas is not required for production or even for tests, configure
pnpm to skip its native build.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Hoisted mode is incompatible with Docker's overlay filesystem.
Remove .npmrc and regenerate lockfile with default isolated mode.
This maintains semantic-release functionality while allowing
Docker builds to succeed.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Change from shamefully-hoist to node-linker=hoisted
- This creates a flat node_modules structure like npm
- Should fix semantic-release module resolution in CI
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Switch .npmrc to shamefully-hoist=true for better compatibility
- This ensures all dependencies are hoisted to root node_modules
- Fixes module resolution issues in CI for semantic-release plugins
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add .npmrc with public-hoist-pattern for semantic-release deps
- Fix project_root path in generate.py for monorepo structure
- Templates are at packages/templates/ not packages/core/templates/
- Fonts are at monorepo root fonts/ directory
Fixes:
- semantic-release conventional-changelog-conventionalcommits not found
- FileNotFoundError for single-card.typ and flashcards.typ
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>