GitHub Action
Repo Visualizer
A GitHub Action that creates an SVG diagram of your repo. Read more in the writeup.
Please note that this is an experiment. If you have feature requests, please submit a PR or fork and use the code any way you need.
For a full demo, check out the githubocto/repo-visualizer-demo repository.
A path (relative to the root of your repo) to where you would like the diagram to live.
For example: images/diagram.svg
Default: diagram.svg
A list of paths to folders to exclude from the diagram, separated by commas.
For example: dist,node_modules
Default: node_modules,bower_components,dist,out,build,eject,.next,.netlify,.yarn,.vscode,package-lock.json,yarn.lock
A semicolon-delimited array of file globs to exclude from the diagram, using micromatch syntax. Provided as an array.
For example:
excluded_globs: 'frontend/*.spec.js;**/*.{png,jpg};**/!(*.module).ts'
# Guide:
# - 'frontend/*.spec.js' # exclude frontend tests
# - '**/*.{png,ico,md}' # all png, ico, md files in any directory
# - '**/!(*.module).ts' # all TS files except module files
The directory (and its children) that you want to visualize in the diagram, relative to the repository root.
For example: src/
Default: ''
(current directory)
The maximum number of nested folders to show files within. A higher number will take longer to render.
Default: 9
The commit message to use when updating the diagram. Useful for skipping CI. For example: Updating diagram [skip ci]
Default: Repo visualizer: updated diagram
The branch name to push the diagram to (branch will be created if it does not yet exist).
For example: diagram
You'll need to run the actions/checkout
Action beforehand, to check out the code.
- name: Checkout code
uses: actions/checkout@master
- name: Update diagram
uses: githubocto/[email protected]
with:
output_file: "images/diagram.svg"
excluded_paths: "dist,node_modules"