@evcraddock/slug
v0.1.2
Published
Command-line tool for Slugkit sites.
Downloads
0
Readme
slug CLI
Foundation package for the slug command-line tool. Release instructions are documented in ../docs/cli-release.md.
Development
From the repository root:
npm run test --workspace @evcraddock/slug
npm run typecheck --workspace @evcraddock/slugRun locally with Node's TypeScript loader:
node --import tsx cli/src/index.ts --helpSite initialization
Create a standalone site with:
slug init ./my-site --name my-site --site-title "My Site"Run slug init --help for template options. In repository-local development, slug init copies template/site directly. Installed CLI releases download the matching versioned template asset from the Forgejo release unless --template-url or --template-dir is provided.
Login and configuration
Run slug login to open the site's browser auth flow, paste the generated API key, verify it, and save the config. Use slug doctor to check configured site reachability and compatibility. Use slug --config ./dev.slug.yaml login to run with a specific config file.
The CLI stores YAML config at ${XDG_CONFIG_HOME:-~/.config}/slug/config.yaml by default. Tests and isolated runs can set SLUG_CONFIG_HOME to override the config directory. slug config show reports whether an API key is configured without printing the key.
Use slug site config show to read supported runtime site configuration through the Slugkit API. Use slug site config set <field> <value> to update supported fields such as name, url, tagline, description, homepage.intro, and homepage.body.
Use slug post list, slug post show <slug>, slug post create, slug post edit <slug>, slug post publish <slug>, slug post unpublish <slug>, and slug post delete <slug> to manage posts through the Slugkit posts API.
Use slug tag list to list tags and post usage counts through the Slugkit tags API.
Example config:
apiBaseUrl: https://example.com/api/v1