skill-tree
A tool for rendering "skill trees", currently using graphviz.
What is a skill tree?
A "skill tree" is a useful way to try and map out the "roadmap" for a project. The term is borrowed from video games, but it was first applied to project planning in this rather wonderful [blog post about WebAssembly's post-MVP future][wasm] (at least, that was the first time I'd seen it used that way). [wasm]: https://hacks.mozilla.org/2018/10/webassemblys-post-mvp-future/
See an example skill tree in this project's website.
How to use
mdbook integration
The main way to use this project is to integrate it into an mdbook. Use these steps to install it:
cargo install mdbook-skill-tree
- installs the
mdbook-skill-tree
executable
- installs the
- in your mdbook's directory,
mdbook-skill-tree install
- updates your
book.toml
to contain the relevant javascript files
- updates your
- in your mdbook, add a
skill-tree
code block, as seen here.
run manually
You can run skill-tree
directly in which case it generates a dot
file.
For example:
cargo run -- tree-data/example.toml example.dot
will transform the tree-data/example.toml
file you can find in this repository.
Next steps
I should, of course, create a skill-tree for this project-- but the goal is to make this something that can be readily dropped into a working group repository (like wg-traits) and used to track the overall progress and plans of a project. The workflow isn't quite drag and drop enough for that yet, but we're close!