Skip to content

init

Scaffolds a new Slide Spec project.

bash
npx @slide-spec/cli init

Running init without flags starts interactive mode, which walks you through project titles, reporting period, optional connector configuration, and branding.

For CI or scripting, pass required flags directly:

bash
npx @slide-spec/cli init \
  --presentation-id 2026-spring-briefing \
  --title "Spring Product Brief" \
  --subtitle "Spring 2026" \
  --from-date 2026-03-01

Flags

FlagRequiredDescription
[project-root] (positional)Target directory. Defaults to current directory
--project-rootAlternative to the positional argument
--presentation-idnon-interactiveDirectory name under presentations/
--titlenon-interactivePresentation title
--subtitlePresentation subtitle
--from-datenon-interactiveReporting period start
--to-dateReporting period end
--summarySummary shown in the presentation list
--forceOverwrite existing files

"non-interactive" means required only when running with flags instead of prompts.

Output

Creates these files under content/:

content/
├── site.yaml
├── presentations/
│   ├── index.yaml
│   └── <presentation-id>/
│       ├── presentation.yaml
│       └── generated.yaml

If site.yaml or index.yaml already exist, they are updated rather than overwritten (unless --force is used).