Shared plugin tooling

Dev-only shared config for lint, format, TypeScript, build, test database, and release workflows across the @seshuk Payload plugins.

Community 0 452/wk MIT v0.2.4

Installation

pnpm add @seshuk/payload-plugin-tooling

About

This package holds the dev configuration that the @seshuk Payload plugins share. It gives each plugin ready-made oxlint and oxfmt configs, a base tsconfig, a tsdown build that keeps the src layout in dist, a Vitest base config with the `@/` alias, and reusable GitHub Actions workflows for CI and release. It is a devDependency only. The build bundles its telemetry and fields modules into the plugin, so plugins never import it at runtime. The `./test-database` export returns an in-memory database for Payload tests. The `TEST_DB` variable selects `sqlite` (the default), `postgres` through PGlite, or `mongodb` through mongodb-memory-server. Each option needs its own adapter package installed. The release workflow builds the changelog with git-cliff, adds optional release notes from `.github/releases/vX.Y.Z.md`, sets the npm dist-tag from the version, and publishes through npm trusted publishing or an `NPM_TOKEN` secret. The `./fields` export gives plugins helpers for field placement. `insertField` returns a new field list with a field placed first, last, in the sidebar, or before or after a dotted path. Paths reach into groups and named tabs, and an ambiguous or unknown path throws. `findFieldPaths` lists the named fields that match a predicate. The `./telemetry` export sends anonymous daily usage reports, limited to booleans for plugin features, and it turns off under `telemetry: false`, `DO_NOT_TRACK=1`, `CI`, or `NODE_ENV=test`. Plugin authors who want their own collector can set `telemetry: { url }`, but the server accepts only products it already knows.

Package info

Package name
@seshuk/payload-plugin-tooling
Latest version
0.2.4
Unpacked size
35 kB
License
MIT
Weekly downloads
452
Last publish
Oct 10, 2026

More from maximseshuk

View profile

Similar plugins

More in Devtools