siren-dsl


Namesiren-dsl JSON
Version 0.3.1 PyPI version JSON
download
home_pagehttps://github.com/Freymaurer/Siren
SummaryA simple dsl for creating mermaid graphs!
upload_time2024-06-04 12:28:51
maintainerNone
docs_urlNone
authorKevin Frey
requires_python<4.0,>=3.11
licenseNone
keywords mermaid dsl fable graphs
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Siren

Siren is a simple DSL for creating [Mermaid](https://mermaid.js.org) graphs YAML.

Have a look at the docs here:

* [Docs](https://freymaurer.github.io/Siren/)
* [Blog post](https://freymaurer.github.io/Siren/blog/Library%20Design)

<table>
  <thead>
    <tr>
      <th>Latest Release</th>
      <th>Downloads</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <a href="https://pypi.org/project/siren-dsl/">
          <img src="https://img.shields.io/pypi/v/siren-dsl?logo=pypi" alt="latest release" />
        </a>
      </td>
      <td>
        <a href="https://pepy.tech/project/siren-dsl">
          <img src="https://pepy.tech/badge/siren-dsl" alt="downloads" />
        </a>
      </td>
    </tr>
    <!-- js package -->
    <tr>
      <td>
        <a href="https://www.npmjs.com/package/siren-dsl">
          <img src="https://img.shields.io/npm/v/siren-dsl?logo=npm" alt="latest release" />
        </a>
      </td>
      <td>
        <a href="https://www.npmjs.com/package/siren-dsl">
          <img src="https://img.shields.io/npm/dt/siren-dsl.svg" alt="downloads" />
        </a>
      </td>
    </tr>
    <!-- f# nuget package -->
    <tr>
      <td>
        <a href="https://www.nuget.org/packages/Siren/">
          <img src="https://img.shields.io/nuget/v/Siren?logo=nuget" alt="latest release" />
        </a>
      </td>
      <td>
        <a href="https://www.nuget.org/packages/Siren/">
          <img src="https://img.shields.io/nuget/dt/Siren.svg" alt="downloads" />
        </a>
      </td>
      <!-- c# nuget package "Siren.Sea" -->
    </tr>
    <tr>
      <td>
        <a href="https://www.nuget.org/packages/Siren.Sea/">
          <img src="https://img.shields.io/nuget/v/Siren.Sea?logo=nuget" alt="latest release" />
        </a>
      </td>
      <td>
        <a href="https://www.nuget.org/packages/Siren.Sea/">
          <img src="https://img.shields.io/nuget/dt/Siren.Sea.svg" alt="downloads" />
        </a>
      </td>
    </tr>
  </tbody>

</table>


---
> if you are interested in creating a Fable library like this on your own you can use the template [Fable.Multiverse](https://github.com/Freymaurer/Fable.Multiverse)!
---
## Contribution

If you have any ideas on how to improve the library, please feel free to contribute! The best way to get in contact is using the issues! 

---
## Local Development

### Requirements

Because this library targets multiple programming languages we need to support all of them:

- [nodejs and npm](https://nodejs.org/en/download)
    - verify with `node --version` (Tested with v20.10.0)
    - verify with `npm --version` (Tested with v9.2.0)
- [.NET SDK](https://dotnet.microsoft.com/en-us/download)
    - verify with `dotnet --version` (Tested with 8.0.205)
- [Python](https://www.python.org/downloads/)
    - verify with `py --version` (Tested with 3.11.9, known to work only for >=3.11)

### Setup

This needs to be done on a fresh download once. Paths for python venv executable might be different depending on the OS.

1. `dotnet tool restore`
2. `npm install`
3. `py -m venv ./.venv`
4. `.\.venv\Scripts\Activate.ps1`
5. `python -m pip install -U pip setuptools`
6. `python -m pip install poetry`
7. `python -m poetry install --no-root`

### Testing

First activate python virtual environment (`.\.venv\Scripts\Activate.ps1`).

`.\build.cmd test`

*or specify target*

`.\build.cmd test [f#, c#, js [native], py [native]]`

### Publish

Requires API keys for Nuget and PyPi. 

The following command will run all tests, bundle and then start publishing!

`.\build.cmd publish pipeline`

*or only publish specific targets, without test and bundle*

`.\build.cmd publish [npm, pypi, nuget]`

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Freymaurer/Siren",
    "name": "siren-dsl",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.11",
    "maintainer_email": null,
    "keywords": "mermaid, dsl, fable, graphs",
    "author": "Kevin Frey",
    "author_email": "freymaurer@gmx.de",
    "download_url": "https://files.pythonhosted.org/packages/30/03/0074c4705534e296fd776c145047c0cb6374101461b2d44ffb5309ad6dd6/siren_dsl-0.3.1.tar.gz",
    "platform": null,
    "description": "# Siren\n\nSiren is a simple DSL for creating [Mermaid](https://mermaid.js.org) graphs YAML.\n\nHave a look at the docs here:\n\n* [Docs](https://freymaurer.github.io/Siren/)\n* [Blog post](https://freymaurer.github.io/Siren/blog/Library%20Design)\n\n<table>\n  <thead>\n    <tr>\n      <th>Latest Release</th>\n      <th>Downloads</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <td>\n        <a href=\"https://pypi.org/project/siren-dsl/\">\n          <img src=\"https://img.shields.io/pypi/v/siren-dsl?logo=pypi\" alt=\"latest release\" />\n        </a>\n      </td>\n      <td>\n        <a href=\"https://pepy.tech/project/siren-dsl\">\n          <img src=\"https://pepy.tech/badge/siren-dsl\" alt=\"downloads\" />\n        </a>\n      </td>\n    </tr>\n    <!-- js package -->\n    <tr>\n      <td>\n        <a href=\"https://www.npmjs.com/package/siren-dsl\">\n          <img src=\"https://img.shields.io/npm/v/siren-dsl?logo=npm\" alt=\"latest release\" />\n        </a>\n      </td>\n      <td>\n        <a href=\"https://www.npmjs.com/package/siren-dsl\">\n          <img src=\"https://img.shields.io/npm/dt/siren-dsl.svg\" alt=\"downloads\" />\n        </a>\n      </td>\n    </tr>\n    <!-- f# nuget package -->\n    <tr>\n      <td>\n        <a href=\"https://www.nuget.org/packages/Siren/\">\n          <img src=\"https://img.shields.io/nuget/v/Siren?logo=nuget\" alt=\"latest release\" />\n        </a>\n      </td>\n      <td>\n        <a href=\"https://www.nuget.org/packages/Siren/\">\n          <img src=\"https://img.shields.io/nuget/dt/Siren.svg\" alt=\"downloads\" />\n        </a>\n      </td>\n      <!-- c# nuget package \"Siren.Sea\" -->\n    </tr>\n    <tr>\n      <td>\n        <a href=\"https://www.nuget.org/packages/Siren.Sea/\">\n          <img src=\"https://img.shields.io/nuget/v/Siren.Sea?logo=nuget\" alt=\"latest release\" />\n        </a>\n      </td>\n      <td>\n        <a href=\"https://www.nuget.org/packages/Siren.Sea/\">\n          <img src=\"https://img.shields.io/nuget/dt/Siren.Sea.svg\" alt=\"downloads\" />\n        </a>\n      </td>\n    </tr>\n  </tbody>\n\n</table>\n\n\n---\n> if you are interested in creating a Fable library like this on your own you can use the template [Fable.Multiverse](https://github.com/Freymaurer/Fable.Multiverse)!\n---\n## Contribution\n\nIf you have any ideas on how to improve the library, please feel free to contribute! The best way to get in contact is using the issues! \n\n---\n## Local Development\n\n### Requirements\n\nBecause this library targets multiple programming languages we need to support all of them:\n\n- [nodejs and npm](https://nodejs.org/en/download)\n    - verify with `node --version` (Tested with v20.10.0)\n    - verify with `npm --version` (Tested with v9.2.0)\n- [.NET SDK](https://dotnet.microsoft.com/en-us/download)\n    - verify with `dotnet --version` (Tested with 8.0.205)\n- [Python](https://www.python.org/downloads/)\n    - verify with `py --version` (Tested with 3.11.9, known to work only for >=3.11)\n\n### Setup\n\nThis needs to be done on a fresh download once. Paths for python venv executable might be different depending on the OS.\n\n1. `dotnet tool restore`\n2. `npm install`\n3. `py -m venv ./.venv`\n4. `.\\.venv\\Scripts\\Activate.ps1`\n5. `python -m pip install -U pip setuptools`\n6. `python -m pip install poetry`\n7. `python -m poetry install --no-root`\n\n### Testing\n\nFirst activate python virtual environment (`.\\.venv\\Scripts\\Activate.ps1`).\n\n`.\\build.cmd test`\n\n*or specify target*\n\n`.\\build.cmd test [f#, c#, js [native], py [native]]`\n\n### Publish\n\nRequires API keys for Nuget and PyPi. \n\nThe following command will run all tests, bundle and then start publishing!\n\n`.\\build.cmd publish pipeline`\n\n*or only publish specific targets, without test and bundle*\n\n`.\\build.cmd publish [npm, pypi, nuget]`\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A simple dsl for creating mermaid graphs!",
    "version": "0.3.1",
    "project_urls": {
        "Homepage": "https://github.com/Freymaurer/Siren",
        "Repository": "https://github.com/Freymaurer/Siren"
    },
    "split_keywords": [
        "mermaid",
        " dsl",
        " fable",
        " graphs"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6cac5b11e1ac531be83287047c8c8486ea87eef4bfb524ecba179eb08249da32",
                "md5": "a13ba2c3b620cbdb78663754a457f2ed",
                "sha256": "8de7f72fc592449a34a4f72c4feaf77181485d6683f74aa5a1b2caa930636dc0"
            },
            "downloads": -1,
            "filename": "siren_dsl-0.3.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a13ba2c3b620cbdb78663754a457f2ed",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.11",
            "size": 155122,
            "upload_time": "2024-06-04T12:28:49",
            "upload_time_iso_8601": "2024-06-04T12:28:49.333948Z",
            "url": "https://files.pythonhosted.org/packages/6c/ac/5b11e1ac531be83287047c8c8486ea87eef4bfb524ecba179eb08249da32/siren_dsl-0.3.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "30030074c4705534e296fd776c145047c0cb6374101461b2d44ffb5309ad6dd6",
                "md5": "c35594c35f541911adee0d720ede396f",
                "sha256": "7bafb1e5cac7b397d42ea9b4089b847cc386c9de055fbda13dad811909b7e9fa"
            },
            "downloads": -1,
            "filename": "siren_dsl-0.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "c35594c35f541911adee0d720ede396f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.11",
            "size": 133338,
            "upload_time": "2024-06-04T12:28:51",
            "upload_time_iso_8601": "2024-06-04T12:28:51.386621Z",
            "url": "https://files.pythonhosted.org/packages/30/03/0074c4705534e296fd776c145047c0cb6374101461b2d44ffb5309ad6dd6/siren_dsl-0.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-04 12:28:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Freymaurer",
    "github_project": "Siren",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "siren-dsl"
}
        
Elapsed time: 0.40372s