kb-dashboard-core
Core compilation engine for YAML to Kibana dashboard format.
Overview
kb-dashboard-core is a pure Python library that provides the core compilation functionality for converting YAML dashboard definitions to Kibana's JSON format. This package contains no external service dependencies (no Elasticsearch, Kibana HTTP client, CLI framework, or LSP dependencies).
Features
- Load dashboard configurations from YAML files
- Compile YAML dashboard definitions to Kibana JSON format
- Support for various panel types (Lens charts, markdown, etc.)
- Control and filter compilation
- Query building and validation
Installation
pip install kb-dashboard-core
Usage
from kb_dashboard_core import load, render, dump
# Load dashboards from YAML
dashboards = load('path/to/dashboard.yaml')
# Render to Kibana format
for dashboard in dashboards:
kibana_json = render(dashboard)
print(kibana_json.model_dump_json(indent=2))
# Save dashboards back to YAML
dump(dashboards, 'path/to/output.yaml')
Developer Documentation
- Compiler Architecture - High-level architecture and data flow for the YAML-to-Kibana compiler.
- Kibana Architecture Reference - Technical reference for Kibana's dashboard JSON schema and internal architecture. Essential reading for understanding the compiler's output format.
Development
See DEVELOPING.md for development setup and workflows.
License
MIT
Release files for kb-dashboard-core 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kb_dashboard_core-0.4.1.tar.gz | 128.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kb_dashboard_core-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 324.7 kB
Release files / kb_dashboard_core-0.4.1.tar.gz
| Download URL | kb_dashboard_core-0.4.1.tar.gz |
|---|---|
| Size | 128.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b94ff84dbb6c198bd9a21aabf538a67d19ff559f36fc8151a4ffb49f24595238
|
|
BLAKE2b-256 checksum How to use checksums |
98a47c65d0e6ba5f11d1b141e71b399b5816bec13f1223a3956dedbeb53b1f0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / kb_dashboard_core-0.4.1-py3-none-any.whl
| Download URL | kb_dashboard_core-0.4.1-py3-none-any.whl |
|---|---|
| Size | 196.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
55814d2b6a1b017495f50d395ff9145b3c34e7b602dd46955f9ba19a6052fb24
|
|
BLAKE2b-256 checksum How to use checksums |
60d5bc6f0b15fa6c752ced93f06aac534b94743f4c52c659c6c0096848677cf5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|