solidity-mermaid icon indicating copy to clipboard operation
solidity-mermaid copied to clipboard

A Solidity AST processor for transpiling Solidity smart contracts into Github's Mermaid.js language for diagramming.

Results 18 solidity-mermaid issues
Sort by recently updated
recently updated
newest added

this looks really cool, i ♥️ mermaid i'd love to create a js file that i can run from the command line and have it produce a chart for me....

## Description Currently, the tests only go over a subset of the contracts. The reason seems to be [this issue](https://github.com/isaacs/node-glob/issues/480), which requires replacing the glob with a function that is...

good first issue

## Description Both `VariableDeclaration` and `VariableDeclarationStatement` should be handled as a [member of a class.](https://mermaid.js.org/syntax/classDiagram.html#defining-members-of-a-class) Might be tackled along with #4 and #11 In case of requiring prioritization, this is...

✨ feature

## Description Since the diagram of a complex contract might be overwhelming to read and explorer, it should have a settings manager so we can do live configurable diagrams. A...

✨ feature

## Description Implement as a class with a `` annotation as [presented in the docs](https://mermaid.js.org/syntax/classDiagram.html#annotations-on-classes)

✨ feature

## Description Add as a [class member](https://mermaid.js.org/syntax/classDiagram.html#defining-members-of-a-class)

✨ feature

## Description Add as a [class member](https://mermaid.js.org/syntax/classDiagram.html#defining-members-of-a-class)

✨ feature

## Description This one includes handling: - `ArrayTypeName` - `ElementaryTypeName` - `FunctionTypeName` - `Mapping` - And maybe `UserDefinedTypeName` (#4)

✨ feature

## Description The `new` expression is for instantiating new classes, which means something like: ```solidity contract A { B b; constructor() { b = new B(); } } ``` Should...

✨ feature

## Description Currently, there doesn't seem to be a way of expressing overriding with Mermaid, but can be done in another way (eg. using `static` visibility to express it)

🧐 question
✨ feature