This repository contains JSON flowcharts for troubleshooting CrunchLabs' Hack Pack boxes. It supports interactive walkthroughs and visual Mermaid.js charts.
Common issues that many people might experience can be PRed to these flowcharts. Very rare issues, such as a pin not being soldered fully, are not useful on these flowcharts. The ideal issues are build issues people frequently make or common issues.
These flowcharts are processed into:
- Interactive Walkthroughs: Step-by-step guides to troubleshoot issues.
- Mermaid.js Charts: Visual flowcharts for better understanding.
The questions object defines the flowchart structure. It starts with Title as the entry point, following Mermaid.js conventions. Each question includes:
question: The text to display for the question.answers: An array of possible answers, each containing:answer: The text of the option.nextQuestion: The next question to navigate to based on the answer.customArrow(optional): Overrides the default->arrow for better flowchart aesthetics.
- The
answerproperty can benullto create invisible options for spacing arrows in the flowchart. customArrowcan also be defined at the root of a chart or on a question object to change the default arrow style globally or locally.
Mermaid.js formatting can sometimes be weird. The parser attempts to escape content as needed, but certain elements (e.g., embedded links) may need updates to the parser.
The renderOptions field at the root level allows customization of the flowchart's layout and rendering behavior. For example:
The elk layout engine improves readability for complex charts but requires square lines which don't look as good. Some very linear charts like the IDE chart don't need ELK, whereas more complex charts do.