App-Spec

 view release on metacpan or  search on metacpan

examples/myapp-spec.yaml  view on Meta::CPAN

---
name: myapp
plugins: [Format]
appspec: { "version": 0.001 }
class: App::Spec::Example::MyApp
title: My Very Cool App
abstract: This app can do very cool things
description: |
  This is a very useful description for myapp.
  This is a very useful description for myapp.
  This is a very useful description for myapp.
  This is a very useful description for myapp.
options:
  -
    name: verbose
    summary: be verbose
    type: flag
    multiple: true
    aliases: ["v"]

subcommands:
  cook:
    summary: Cook something
    op: cook
    parameters:
      -
        name: drink
        summary: What to drink
        required: true
        type: string
        enum: ["tea", "coffee"]
    options:
      -
        name: with
        summary: Drink with ...
        type: string
        enum: ["almond milk", "soy milk", "oat milk", "spelt milk", "cow milk"]
      -
        name: sugar
        type: flag
        aliases: ["s"]
        summary: add sugar

  weather:
    summary: Weather
    subcommands:
      show:
        summary: Show Weather forecast
        op: weather
        options:
          - name: temperature
            summary: show temperature
            aliases: [T]
            type: flag
          - name: celsius
            summary: show temperature in celsius
            aliases: [C]
            type: flag
          - name: fahrenheit
            summary: show temperature in fahrenheit
            aliases: [F]
            type: flag
        parameters:
          - name: country
            required: true
            summary: Specify country
            values:
              op: weather_complete
            completion:
              op: weather_complete
          - name: city
            required: true
            multiple: true
            summary: Specify city or cities
            values:
              op: weather_complete
            completion:
              op: weather_complete
      countries:
        summary: show list of countries
        op: countries
      cities:
        summary: show list of cities



( run in 1.157 second using v1.01-cache-2.11-cpan-39bf76dae61 )