NOTE: Kibana now includes its own plugin generator. You should use this to generate your plugin if you are targeting Kibana 6.3 or greater.
This project is an sao.js template for bootstrapping a Kibana Plugin. It creates a basic hello world Kibana plugin with all the elements in place so you can easily get started with creating your first Kibana plugin.
Generator Version | Min Kibana Version | Max Kibana Version |
---|---|---|
bundled plugin generator | 6.3 | master |
^7.0.1 | 5.5.0 | 6.2 |
^6.2.2 | 5.0.0 | 5.4.x |
You can find instructions on the Kibana development documentation
Double check that your Node.js version matches Kibana's .node-version file
node --version
HINT: If you install nvm
and avn
then you can create your own .node-version
file and avn
will switch to it automatically!
The Kibana directory must be named kibana
, and your plugin directory must be a sibling directory
ls ~/wherever/you/store/your/code
kibana # <- where you store the Kibana development environment
my-new-plugin # <- your plugin directory
npm install -g sao
cd my-new-plugin
sao kibana-plugin
HINT: If you need to use a version other than the latest, you can specify it when you run the template:
# SAO will install [email protected]
sao [email protected]
Elasticsearch is available at http://localhost:9200
, unless you explicitly changed it in the Elasticsearch config.
npm start
HINT: If your Elasticsearch instance is running on another port, you can pass it in here.
npm start -- --elasticsearch.url 'http://localhost:9200'
# passing the elasticsearch.url here is to demonstrate how arguments can
# be passed to kibana with `npm start` but is not actually necessary if
# you are running elasticsearch locally
Visit http://localhost:5601 with your web browser of choice.
-
npm start
Start kibana and have it include this plugin
-
npm start -- --config kibana.yml
You can pass any argument that you would normally send to
bin/kibana
by putting them after--
when runningnpm start
-
npm run build
Build a distributable archive
-
npm run test:browser
Run the browser tests in a real web browser
-
npm run test:server
Run the server tests using mocha
For more information about any of these commands run npm run ${task} -- --help
.