Giter Site home page Giter Site logo

marcflohrer / structurizrtomarkdown Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 14 KB

Converts structurizr workspace.json into a interface description list listing the properties of the interfaces in markdown list.

C# 89.14% Dockerfile 4.23% Shell 6.63%

structurizrtomarkdown's Introduction

structurizr 2 markdown

Converts structurizr workspace.json into a interface description list listing the properties of the interfaces in left aligned markdown list.

Prerequisites

You need a workspace.json file from structurizr that has relationships between interfaces and components with properties on the interfaces. The properties for all interfaces need to have the same keys

Feature

It takes a workspace.json as input that has to contain properties on the relationships like this:

workspace {
    model {
        user = person "User" "A user of my software system."
        softwareSystem1 = softwareSystem "Software System" "My software system." {
            container1 = container "Internal Container" {
                component1 = component "component" {
                    perspectives {
                        "view" "dsgvo"
                    }
                }
            }
        }

        user -> softwareSystem1 "Uses" {
            properties {
                "Encryption" "Yes, TLS 1.2"
                "Data classifiation" "Personal data"
                "Purpose" "User management"
            }
        }
    }

The above shows the corresponding workspace.dsl but the json file is derived from it.

The output is a markdown file named workspace.md that looks like this:

| Encryption | Data classifiation | Purpose |
| :--- | :--- | :--- |
| Yes, TLS 1.2 | Personal data | User management |

Usage

From sources

  1. Clone the repository
  2. cd into the repository
  3. Run dotnet build
  4. Run dotnet interface-description-list.dll -w <path to workspace.json>

From docker image

  1. Run chmod +x run.sh && ./run.sh "<path to directory that contains workspace.json>

Example

chmod +x run.sh && ./run.sh /Users/username/Documents/structurizr/

Output file

The output file is the same as the input file with the extension changed to .md

structurizrtomarkdown's People

Contributors

marcflohrer avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.