Skip to content

offrecord 0.0.3 — Documentation site + GitHub Actions automation

Choose a tag to compare

@tobrien tobrien released this 30 Jan 22:29
· 2 commits to working since this release
d261516

Main story

0.0.3 is primarily an “operational + documentation” release: it adds a Vite/React-powered documentation site (published to GitHub Pages) and introduces GitHub Actions workflows for testing and npm publishing. The library package version is bumped to 0.0.3.

There are no meaningful runtime/library feature changes in this range (changes are concentrated in docs/, workflows, and README/package metadata).

What changed

Documentation site (new)

A new documentation site lives under docs/ and is built with Vite + React:

  • New docs app and UI:

    • docs/src/App.tsx implements a sidebar-based docs navigator with section loading via fetch() from static markdown files.
    • docs/src/components/MarkdownRenderer.tsx renders Markdown with:
      • GitHub Flavored Markdown support (remark-gfm)
      • Syntax highlighting via Prism (react-syntax-highlighter)
      • A small normalization that removes a top-level # offrecord header to avoid duplicate page headings.
    • Additional UI components and styling (LoadingSpinner, ErrorMessage, App.css, index.css, etc.)
  • New markdown content under docs/public/:

    • getting-started.md, redaction.md, secure-string.md, safe-errors.md, secure-buffers.md, api-reference.md
  • GitHub Pages support:

    • docs/vite.config.ts sets base: '/offrecord/' for correct asset paths on GitHub Pages.

Impact

  • Users get browsable docs at the project GitHub Pages URL.
  • Contributors can run docs locally using the new npm scripts (see below).

CI/CD automation (new workflows)

Three workflows were added under .github/workflows/:

  • Run Tests (test.yml)

    • Runs on pull requests to main and working
    • Executes: install → lint → build → test (Node 24)
  • Publish to npm (npm-publish.yml)

    • Runs when a GitHub Release is created
    • Publishes the package to npm using NPM_TOKEN
  • Deploy docs to GitHub Pages (deploy-docs.yml)

    • Runs on pushes to main, and on release creation
    • Builds the library, builds the docs site, then deploys docs/dist to GitHub Pages

Impact

  • More consistent validation on PRs.
  • Release creation becomes the trigger for both npm publishing and docs deployment.

Package metadata and developer experience

  • Root package.json:

    • Version bumped to 0.0.3
    • Adds documentation scripts:
      • docs:dev, docs:build, docs:preview, docs:test, docs:coverage
    • Sets homepage to https://utilarium.github.io/offrecord/
    • Maintains Node engine requirement: >=24.0.0
  • docs/package.json added (separate dependency set for the docs app).

  • .gitignore updated to ignore docs build artifacts and a few local/dev files (docs/dist/, docs/node_modules/, docs/public/README.md, *~, .kodrdriv*, etc.)

README updates

  • README content was expanded/updated to better document the existing public API surface (redaction, SecureString, safe errors, secure buffers) and link to API reference sections.
  • Note: the README currently ends with a stray TEST line.

Breaking changes

No explicit breaking API changes were identified between main and HEAD for this release.

Notes/caveats:

  • Workflows and package.json reinforce Node >= 24 (already present in package metadata). If you run CI or local development on older Node versions, you may need to upgrade.
  • The docs site is new and does not affect library consumers at runtime.

Summary for users vs. contributors

  • Library consumers: No behavior changes expected; this release is mainly docs + release automation.
  • Contributors/maintainers: New PR test workflow, release-driven npm publish, and automated GitHub Pages deployment; plus a full docs site under docs/.