Use the playground
The Config Mate playground is a Streamlit application for experimenting with
YAML and seeing its fully resolved form immediately. It is useful for learning
$ref, reviewing a configuration fragment, and diagnosing a reference before
adding it to a root document.
The playground is an exploration tool. Use the CLI for repeatable builds and CI pipelines.
Resolve the included example
- Start the application using one of the methods below.
- Open the URL printed by Streamlit, or
http://localhostfor the container tasks. - Review or edit the YAML in the code editor.
- Select Update.
- Read the Referenced and parsed configuration below the editor.
A green Success badge means the YAML was parsed and all references were resolved. A Validation failure badge includes the parser, loading, or reference error.
The bundled example demonstrates both internal references such as
#/components/recipes/simple_exit_handler and HTTPS references to remote CWL
documents. The machine running Streamlit must be able to reach any remote
resource used by the example.
Run your working tree in a container
To build the playground from the current checkout and run it:
task run_playground_dev
This is the most representative option when changing Config Mate or the playground itself.
Run the application directly
From the repository root, install the application dependencies and start Streamlit:
python -m pip install -e .
python -m pip install streamlit streamlit-code-editor
streamlit run playground/playground.py
Streamlit normally serves the application at http://localhost:8501.
Understand the playground's limits
- The editor accepts YAML input and displays YAML output.
- The playground does not save a bundle to disk; copy the result or reproduce the operation with the CLI.
- It is not an application-schema validator. Success means the document was parsed and its references were resolved.
- Remote references are fetched by the Streamlit server, not by the browser.
- Do not paste secrets into a shared or remotely hosted playground.
For command-line output formats and authenticated remote references, use the CLI.