Configuration
Voltig CLI uses a voltig.yml file to define packages and custom commands. Voltig will automatically find voltig.yml in your current directory or any parent directory.
🔍 Configuration Discovery
Section titled “🔍 Configuration Discovery”You can run Voltig commands from any subfolder in your project tree—Voltig will search upwards for the nearest voltig.yml.
📄 voltig.yml Guide
Section titled “📄 voltig.yml Guide”The voltig.yml file defines packages and custom commands for the Voltig CLI. Below are the allowed formats and best practices for configuration.
Packages Section
Section titled “Packages Section”Define packages to be installed and managed. Each package entry can use either a single name (as a string) or multiple names (as an array of strings).
Allowed Syntax
Section titled “Allowed Syntax”packages: # Single package name (string) - name: "python3" version: latest manager: brew
# Multiple package names (array) - name: ["node", "rust"] version: latest manager: brewField Reference
Section titled “Field Reference”name: string or array of strings — The name(s) of the package(s).version: string — The version to install (e.g., latest, 1.0.0). Optional.manager: string — The package manager to use (e.g., brew).optional: boolean — If true, package is optional. Default is false.dependencies: array of strings — List of package dependencies. Optional.
Example
Section titled “Example”packages: - name: "python3" version: "3.11" manager: brew - name: ["node", "rust"] version: latest manager: brew - name: ["git"] manager: brew optional: true dependencies: ["curl", "openssl"]Commands Section
Section titled “Commands Section”Define custom commands to run with Voltig. Each command can have a summary, a shell command, a script, and optional arguments.
commands: build: summary: Build the project command: go build -o voltig . test: summary: Run tests command: go test ./... setup-dev: summary: Run setup script script: ./scripts/setup-dev.sh deploy: summary: Deploy with arguments script: ./scripts/deploy.sh args: - "--prod"Field Reference
Section titled “Field Reference”summary: Short description of the command.command: Shell command to execute.script: Path to a script file to run.args: List of arguments to pass to the script.
💡 Tip: Indentation should be two spaces. Use YAML array syntax for multiple values.
Best Practices
Section titled “Best Practices”- Group related packages using the array syntax for clarity.
- Use descriptive summaries for commands.
- Keep your configuration DRY and organized.