The npm package is published as @nuanst-one/ngitdb. The build emits declarations and an obfuscated/minified JavaScript runtime:
npm run build
npm run build:action
npm pack --dry-run
npm run build:
dist.d.ts files from TypeScriptsrc/index.ts to dist/index.jsnpm run build:action bundles and minifies the GitHub Action entrypoint at dist/action.cjs, then verifies it can be loaded by Node.
Publish through .github/workflows/npm-publish.yml. The workflow requires repository secret NPM_TOKEN and publishes the public package from this private repository without npm provenance.
Publishing is release-driven and tag-versioned. Create a semver tag with a leading v, then publish a GitHub release from it:
git tag v0.1.1
git push origin v0.1.1
gh release create v0.1.1 --title "v0.1.1" --notes "Release v0.1.1"
The workflow sets package.json and package-lock.json to the tag version at publish time with npm version --no-git-tag-version. Regular PRs do not need package version bumps unless the committed baseline version should change for documentation or local development.
Npm versions are immutable. If @nuanst-one/ngitdb@<tag-version> already exists, the workflow fails before building.
Npm provenance requires the GitHub source repository to be public. If this repository becomes public later, restore id-token: write in the workflow permissions and publish with npm publish --provenance --access public.
Obfuscation raises the cost of casual inspection. It does not make reverse engineering impossible.
This documentation set is ready to publish from docs/wiki as the public site root.
GitHub Pages branch-source publishing supports only / or /docs as the source folder. It does not support /docs/wiki directly.
To publish only docs/wiki, configure Pages to use GitHub Actions. This repository includes .github/workflows/pages.yml, which builds docs/wiki with Jekyll and deploys the generated site.
In the GitHub repository:
Settings.Pages.Build and deployment, set Source to GitHub Actions..github/workflows/pages.yml workflow.The workflow builds from docs/wiki, so GitHub Pages will use docs/wiki/index.md as the site homepage and docs/wiki/_config.yml for the site title, description, Markdown settings, and theme.
The public site entry point is:
docs/wiki/index.md
Wiki-style pages live next to it:
docs/wiki/getting-started.md
docs/wiki/configuration.md
docs/wiki/resource-model.md
docs/wiki/patch-and-ownership.md
docs/wiki/sessions-and-workflow.md
docs/wiki/api-reference.md
docs/wiki/error-handling.md
docs/wiki/examples.md
docs/wiki/roadmap-and-limits.md
GitHub renders Markdown automatically after Pages is enabled. A full local Jekyll preview is optional.
For a quick content check, read docs/wiki/index.md and follow its relative links. For a closer GitHub Pages preview, install Jekyll locally and serve the docs/wiki directory.