-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate Developer Experience Documentation/Scripting into Catalyst Forge #55
Comments
Example Developer.md format for further discussion:
This provides a Layer 3 headings define platform specific versions on the command. The language specifier can be checked if the code is runnable.
If the language isn't a known language, it's not considered a command, just documentation. Problems to solve:
|
First Task:
This parses the markdown file, finds the command by name, and executes anything inside a ''' sh ''' code block, immediately after the command name.
becomes:
|
Problem:
We currently use
just
andJustfiles
to help document and automate tasks which developers do when working on the code bases.This works fine, but has some limitations.
We would also like to reduce the number of minimum dependencies required to work on a Catalyst Project to:
Solution:
Replace
just
with a command runner built inside Catalyst Forge.We follow a principle outlined in: https://en.wikipedia.org/wiki/Literate_programming
Proposal.
In a Project we currently require two files:
Earthfile
blueprint.cue
To these we add a third optional file, which lives beside these files in the repo (for discoverability):
Developer.md
Developer.md
is both Documentation that developers need in order to be able to effectively and quickly work on the project, and embeds common tasks which developers do regularly.In essence, this file is a regular markdown file, and code blocks can contain scripts which are executable, on demand by the
forge cli
.This approach should improve our developer documentation and on-boarding.
We employ a certain structure to the markdown to allow documentation to be extracted, and for commands to be reliably found.
The Forge CLI will be enhanced using this library to parse the Developer.md files:
https://github.com/yuin/goldmark
Tasks
The text was updated successfully, but these errors were encountered: