Brief
Brief is a tool to make writing markdown more productive. You can think of it like a preprocessor for markdown.
Brief converts raw markdown into a nested structure which can be used to automate tasks and generate more specific content elements.
Based on which headings you use and how you nest them, brief will allow you to define mappings to objects which can be used to automate other tasks.
I personally use the brief tool to allow me to take a single markdown file and create a project wiki page, with links to related milestones and github issues.
Example:
# Wiki Page Heading
Content. Will go on a wiki page. The content below here,
and the subheadings, will be replaced with a roll-up / summary
of the elements.
## Milestone Heading
This content will go in the milestone body. The wiki page
that this belongs to, will include a different kind of view of this
content.
### An issue title
This goes in the issue's body. The wiki page this belongs to will
possibly have a link to the issue and a label for its status.
### Another issue title
This goes in this issue's body. Same thing. It obviously belongs to the
milestone.
Given the example above, I run:
brief publish project overview /path/to/markdown
This will create a Github Wiki entry in the repo that I specify, and this wiki entry will include links to the milestones and issues.
You can see a sample of this Wiki page here: (TODO INSERT LINK)
Publishing Briefs
Publishing a brief allows you to run some publishing tasks using raw markdown input.
(TODO) show some examples of a publisher
Writing Briefs
Writing a brief is as easy as running the brief command, with the name of the template you intend to use. It will open up $EDITOR for you with some example input.
brief write project overview #=> Opens up $EDITOR with some example content in it