๐Ÿ›  Ghost Theme Deploy for GitHub Actions (DEV)

July 13, 2026 ยท View on GitHub

This guide covers local development, validation, and releases for the GitHub Action.


Develop

Use Node.js 24 and the pnpm version declared in package.json:

corepack enable
pnpm install --frozen-lockfile

Validate

  • pnpm lint runs oxlint and checks formatting with oxfmt
  • pnpm lint:fix fixes supported lint issues and reformats files
  • pnpm typecheck checks the action, tests and Vitest configuration with TypeScript
  • pnpm test runs the unit, entrypoint and real-archive acceptance tests
  • pnpm test:coverage enforces the ratcheted coverage thresholds used by CI
  • pnpm build compiles the source with TypeScript, then bundles the emitted JavaScript into dist/ with ncc
  • pnpm preship runs the complete release validation sequence

GitHub Actions runs dist/index.js, so the built output is committed. For human-authored changes to the source or bundled dependencies, run pnpm build and commit the resulting dist/ changes. Do not edit dist/ by hand. CI verifies that the committed bundle matches the source.

Renovate pull requests are the exception: Renovate updates manifests without rebuilding dist/. After those changes reach main, the sync-dist workflow rebuilds and commits any bundle changes.

Publish

  • pnpm ship patch runs typecheck, lint, coverage and build, then bumps, commits, tags and pushes
  • pnpm ship minor or pnpm ship major for larger version bumps
  • pnpm ship 2.1.0 for an explicit version

Don't forget to ๐ŸŒŸ Star ๐ŸŒŸ the repo if you like this GitHub Action !