Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/azasypkin/kibana-plugins-rs
An example Kibana plugin written in Rust and Typescript.
https://github.com/azasypkin/kibana-plugins-rs
elasticsearch kibana kibana-plugin rust wasm
Last synced: about 1 month ago
JSON representation
An example Kibana plugin written in Rust and Typescript.
- Host: GitHub
- URL: https://github.com/azasypkin/kibana-plugins-rs
- Owner: azasypkin
- License: mit
- Created: 2022-01-24T11:53:41.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-24T16:49:09.000Z (over 2 years ago)
- Last Synced: 2024-04-24T04:43:13.545Z (8 months ago)
- Topics: elasticsearch, kibana, kibana-plugin, rust, wasm
- Language: Rust
- Homepage: https://www.elastic.co/guide/en/kibana/master/plugin-tooling.html
- Size: 80.1 KB
- Stars: 3
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🦀 Rust + ✨ Kibana = 🔥
An example Kibana plugin written in Rust and Typescript.
---
## Structure
Here is the high-level structure of the plugin:
```
/
├── common/ (1)
├── {public,server}/ (2)
│ └── wasm/ (3)
├── workspace/ (4)
│ ├── kibana_core_types/ (5)
│ │ ├── src/{public,server}/
│ │ └── Cargo.toml
│ └── kibana_plugin/ (6)
│ ├── src/{common,public,server}/
│ └── Cargo.toml
├── Cargo.toml (7)
├── kibana.json (8)
└── package.json (9)1) Common functionality written in TypeScript and TSX
2) Client and server side specific functionality written
in TypeScript and TSX
3) Client and server side functionality compiled to WASM
and corresponding TypeScript definitions
4) Rust workspace folder that includes all custom crates
required by the plugin
5) Rust crate that includes Kibana Core type definitions
and bindings (can be published in https://crates.io)
6) Rust crate that includes common, client and serve side
specific functionality
7) Manifest file for the entire Rust workspace
8) Kibana plugin manifest file
9) Kibana plugin package file
```## Development
See the [kibana contributing guide](https://github.com/elastic/kibana/blob/main/CONTRIBUTING.md) and [wasm-pack documentation](https://rustwasm.github.io/docs/wasm-pack/) for instructions setting up your development environment.
## Scripts
yarn kbn bootstrap
- Execute this to install node_modules and setup the dependencies in your plugin and in Kibana
yarn build-wasm
- Execute this to build Rust portion of the plugin (both client and server sides) to WASM modules
yarn plugin-helpers build
- Execute this to create a distributable version of this plugin that can be installed in Kibana