Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/badetitou/mermaidpharo

Pharo generate mermaid diagram
https://github.com/badetitou/mermaidpharo

mermaidjs pharo

Last synced: about 1 month ago
JSON representation

Pharo generate mermaid diagram

Awesome Lists containing this project

README

        

# MermaidPharo

[![CI](https://github.com/badetitou/MermaidPharo/actions/workflows/CI.yml/badge.svg)](https://github.com/badetitou/MermaidPharo/actions/workflows/CI.yml)
[![Coverage Status](https://coveralls.io/repos/github/badetitou/MermaidPharo/badge.svg?branch=main)](https://coveralls.io/github/badetitou/MermaidPharo?branch=main)

You can use mle to generate [MermaidJS](https://mermaid-js.github.io) diagram from Pharo.

## Installation

```st
Metacello new
githubUser: 'badetitou' project: 'MermaidPharo' commitish: 'main' path: 'src';
baseline: 'MermaidPharo';
load
```

## Example

```st
P2M new
pharoClasses: MeEntity allSubclasses;
generateClassDiagram
```

## Moose Example

After loading the `moose` group, a common usage is:

```st
diagram := M2M new
metamodel: GLHModel resetMetamodel;
withoutBlock: [ :class | (class name endsWith: #Model)
or: [ class package name ~= GLHModel class package name
or: [ (class name endsWith: #Entity) ] ]];
generateClassDiagram.
```

> The without block enable to only select the interesting entities of the metamodel