I've been tasked with developing a basic plugin for Kibana as of POC. I don't have much front-end development experience, so I've been reading through the documentation (which is great btw), but I'm still a little unclear of the exact tech stack I need to know to be able to develop a custom plugin/visualization.
The plugin resources guide says you need node
for generating plugin templates. It also references the EUI Framework for developing visualisations, which appear to written in ReactJS
. The contributing guide also notes needing to use yarn
as a package manager (why not npm if using node?
All the examples I've found use JavaScript as the primary programming language, however I've noticed in the StyleGuide.md page, that it says everything should now be written in TypeScript
. Is this correct? If so how does that impact developing using a framework such as React?
I've found Tim Roes blog on writing kibana plugins, however it is for Kibana 5 and is over 3 years old. Is this still a good reference to use?
I've also found an example of a template plugin, are these still good resources to use, or is it needed at all since you now have the plugin generator?
From reading all these, it appears the tech stack I need to research and learn in order to develop a simple kibana plugin is:
- Node
- JavaScript (and/or TypeScript?)
- React
Is this correct? Or are the other technologies I'm missing? I'm particularly interested about the JavaScript vs TypeScript part, as every example I can find uses JavaScript, and the only reference to using TypeScript is hidden away in a style guide.
EDIT: I should also note I'll be developing this in Kibana 6.5.4 (if that makes a difference)