@agon/atrium-publisher
Publication infrastructure for Agon Ātrium’s starter and showcase packages. It uses Node built-ins and requires Node 24.15.0 or newer within Node 24. It has no browser runtime and does not publish npm packages or deploy websites.
Application developers normally install @agon/atrium-starter or @agon/atrium-showcase. Each template depends on this package and supplies a thin executable invoking runPublisher(templateRoot). Follow the end-to-end integration guide and publication contract.
API
runPublisher(templateRoot, args = process.argv.slice(2))handlespublish,--dry-run,--no-install, and help for a template’s executable. It reports errors and sets a nonzero process exit code.publishTemplate({ templateRoot, target = process.cwd(), install = true, dryRun = false })publishes into an initialized application and returns{ files, installed, dryRun }. It throws on validation, filesystem, or installation failures.
A template supplies a stable package version, scripts, engines, pinned development dependencies, and atriumTemplate metadata containing an explicit application file allowlist and the pinned Yarn version. The publisher validates paths and manifest conflicts before copying missing files, accepts identical files on retries, rejects symlinks and differing destinations, preserves .yarnrc.yml, merges direct core/build dependencies, and updates .gitignore. Installation uses Corepack to run Yarn in the target project.
There is no overwrite mode or upgrade migration. Preflight failures leave the application unchanged. Unexpected filesystem errors can leave partial writes, and a dependency installation failure leaves source files available for correction and retry. The maintained source includes complete JSDoc contracts.
All four Atrium packages use the same release version and restricted project registry.
Author
Laurent Declercq l.declercq@agon-innovation.ch
License
Unless otherwise stated all source code is licensed under LGPL 2.1 and has the following copyright:
© 2026, Agon Partners Innovation AG, All rights reserved.The design material and the “Agon Ātrium” trademark is the property of their authors. Reuse of them without prior consent of their respective authors is strictly prohibited.
Version
Version: 20260921