https://github.com/drgfreeman/yamldash
A simple, interactive, web based YAML validator
https://github.com/drgfreeman/yamldash
dash-bootstrap-components plotly-dash schema-validation yaml yaml-editor yaml-validator
Last synced: 9 months ago
JSON representation
A simple, interactive, web based YAML validator
- Host: GitHub
- URL: https://github.com/drgfreeman/yamldash
- Owner: DrGFreeman
- License: mit
- Created: 2020-01-18T01:37:13.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2024-03-20T15:35:23.000Z (almost 2 years ago)
- Last Synced: 2025-04-20T14:42:36.583Z (10 months ago)
- Topics: dash-bootstrap-components, plotly-dash, schema-validation, yaml, yaml-editor, yaml-validator
- Language: Python
- Homepage:
- Size: 164 KB
- Stars: 9
- Watchers: 3
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# YAMLDash
A simple, interactive, web based YAML validator.
[](https://apps.urandom.xyz/yaml)
The application uses the following Python packages:
* [Plotly Dash](https://dash.plot.ly/) framework to generate the interactive web application.
* [Dash Bootstrap Components](https://dash-bootstrap-components.opensource.faculty.ai/) for the layout and styling.
* [PyYAML](https://pyyaml.org/wiki/PyYAML) for parsing the YAML content.
* [jsonschema](https://python-jsonschema.readthedocs.io/en/stable/) for the schema validation.
The schema validation is performed by first loading both the YAML content and Schema (in YAML format) into Python dictionaries and then using the jsonschema package to validate the dictionary of the YAML content against that of the schema.
## Usage
### Online instance
An online instance is running at https://apps.urandom.xyz/yaml.
### Execution from source
Clone or download the repository, then, from the root of the the repository, install the *yamldash* package using pip:
```
$ pip install .[server]
```
Launch the application server:
```
$ yamldash
```
A browser window should open to the application. In not, access the application at the URL indicated in the terminal (usually http://127.0.0.1:8080).