@sempods/apps
v0.7.1
Published
Tooling for a sempods apps repository: create, check, update and publish several sempods apps with one shared SDK version.
Readme
@sempods/apps
Tooling for a sempods apps repository: several small apps that share one SDK
version, each in apps/<id>, listed in apps.json. It ships the scripts, the
app skeleton, the instructions and skills an assistant follows, and the
starter of a new repository. Do not edit it in a repository that uses it;
your apps and apps.json stay yours.
Create a repository with pnpm create @sempods/apps <directory>
(package @sempods/create-apps), which runs
sempods-apps create <directory> of the same version. The repository's root
package.json runs the other commands through sempods-apps <command>:
pnpm run new-app <id>createsapps/<id>with the root's SDK version.pnpm run dev <id>starts that app.pnpm run regeneraterewrites every app's generated configuration fromapps.json, for example after a tooling update.pnpm run configure-site --production <origin>records where the apps are published and regenerates their configuration.pnpm run build-sitebuilds all apps and the overview into one static site,site-dist/.pnpm run sdk-update <version>moves all apps to one SDK release.pnpm run update [<version>]checks that Node and pnpm suit the target version, installs it and runs itsmigrate.pnpm run migrateapplies the installed version's starter to the repository from.sempods-baseline.json. It applies unambiguous changes and lists the rest as manual cases in.sempods-migration/for the assistant;pnpm run migrate --donethen completes the migration. See the update skill.pnpm run checkchecks all apps;--standalone allalso installs, lints, builds and tests each app on its own. It reports an SDK version outside the range this package supports (itspeerDependencies).
Contents:
instructions/: the setup procedure, the app workflow and the publish guide;skills/holds the skill entries that route to them.skeleton/app/: what a new app starts from. Files named*.generated.tsin an app are written fromapps.json; do not edit them.checkreports any difference, andregeneraterewrites them.shared/: the starter of this release, its files stored by content hash inshared/files/and indexed inshared/snapshot.json. A repository records the revision it was created from, or last applied, in.sempods-baseline.json.update-policy.json: the role of each starter file on update.CHANGELOG.md: what each release changed, with upgrade notes.
engines names the Node and pnpm versions this package needs; read them with
npm view @sempods/apps@<version> engines before installing a version.
In its source repository, starter/ holds the starter files and
maintainer/ the checks and release scripts; neither is published.
