Skip to main content

Module init

Module init 

Source
Expand description

Initialization workflow for creating .ralph state and starter files.

Responsibilities:

  • Orchestrate initialization via run_init().
  • Provide public types for initialization options and results.
  • Re-export submodule functionality for CLI layer.
  • Update .gitignore to include .ralph/workspaces/ for parallel mode hygiene.

Submodules:

  • readme: README version management and updates.
  • wizard: Interactive onboarding wizard UI.
  • writers: File creation for queue, done, and config.
  • gitignore: Gitignore update for Ralph workspace directories.

Not handled here:

  • CLI argument parsing (see crate::cli::init).
  • TTY detection (handled by CLI layer).

Invariants/assumptions:

  • Wizard answers are validated before file creation.
  • Non-interactive mode produces identical output to pre-wizard behavior.
  • Gitignore updates are idempotent (safe to run multiple times).

Re-exports§

pub use readme::ReadmeCheckResult;
pub use readme::ReadmeVersionError;
pub use readme::check_readme_current;
pub use readme::check_readme_current_from_root;
pub use readme::extract_readme_version;
pub use crate::constants::versions::README_VERSION;
pub use wizard::WizardAnswers;
pub use wizard::print_completion_message;
pub use wizard::run_wizard;
pub use writers::write_config;
pub use writers::write_done;
pub use writers::write_queue;

Modules§

gitignore
Gitignore management for Ralph initialization.
readme
README file version management for Ralph initialization.
wizard
Interactive onboarding wizard for Ralph initialization.
writers
File creation utilities for Ralph initialization.

Structs§

InitOptions
Options for initializing Ralph files.
InitReport

Enums§

FileInitStatus

Functions§

run_init