skill-tree

Crates.ioskill-tree
lib.rsskill-tree
version3.1.0
sourcesrc
created_at2020-02-14 22:06:00.397246
updated_at2022-01-03 23:37:15.164173
descriptiongenerate graphviz files to show roadmaps
homepagehttps://github.com/nikomatsakis/skill-tree
repositoryhttps://github.com/nikomatsakis/skill-tree
max_upload_size
id209225
size2,088,293
Niko Matsakis (nikomatsakis)

documentation

README

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
  • in your mdbook's directory, mdbook-skill-tree install
    • updates your book.toml to contain the relevant javascript files
  • 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!

Commit count: 102

cargo fmt