PROPOSAL: Autogenerated Documentation
- Dominant language
- Rust
- Stars
- 35.8k
- Forks
- 846
- Avg merge
- 27m
- Merged PRs (30d)
- 3
Description
We may want to autogenerate markdown documentation of recipes.
In addition, it may encourage people to use it if these autogenerated documents have clear concise instructions for those without 'just runner' on how to install and quickly get started as well.
I'm thinking of two possibilities or simultaneous:
## MINI (Just update a section of a markdown readme doc)
Allow Justfile to search though an existing markdown (or html document) and locate specific 'justfile' tag that allows just to do a replace operation on it. The replaced section is similar to when calling `just --list` but in a more detailed manner (e.g. expected arguments and examples)
| recipes | description |
| --- | --- |
| [build](JUSTDOC.md#build) | build stuff |
| [test](JUSTDOC.md#test) | test stuff |
Plus you could have each `[build](JUSTDOC.md#build)` recipes point to a JUSTDOC.md (if full documentation is enabled)
## FULL (Create an entire autogenerated documentation page with all the recipes and how to use it)
Full autogenerated markdown documentation of every command that can be invoked by the user (Maybe with categories like, maintainers, developers, user etc...) based on the comments
- This would also provide the opportunity to creating a visual graph of dependencies of each recipes, so readers can at a glance see what each recipes will also trigger... (e.g. build will call 'environment_setup' and 'compile' and 'package'). (You might want to allow allow for marking some form of hashtag, so that we show only the most relevant connections. e.g. #buildsystem should not show the logger module, only connection to compile and other relevant recipes)
- Maybe clicking on a dependency module would also jump to that relevant recipes in the doc
```mermaid
graph TD;
build-->environment_setup;
build-->compile-->test;
build-->package;
```
----
### Discussed in https://github.com/casey/just/discussions/2030
Originally posted by **mofosyne** May 14, 2024
Maybe have `` start and end tags and replace it with an autogenerated document of all available commands?
Contributor guide
Assessment
This issue has not been assessed yet.