besser


Namebesser JSON
Version 2.1.0 PyPI version JSON
download
home_pageNone
SummaryBESSER
upload_time2025-01-08 14:10:16
maintainerNone
docs_urlNone
authorLuxembourg Institute of Science and Technology
requires_python>=3.9
licenseMIT
keywords uml code generation python
VCS
bugtrack_url
requirements Arpeggio colorama iniconfig packaging pluggy pytest python-multipart setuptools textX jinja2 antlr4-python3-runtime requests fastapi pydantic uvicorn SQLAlchemy httpx docker
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <img src="./docs/source/_static/besser_logo_light.png" alt="BESSER platform" width="500"/>
</div>

[![Python](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11-blue?logo=python&logoColor=gold)](https://pypi.org/project/besser/)
[![PyPI version](https://img.shields.io/pypi/v/besser?logo=pypi&logoColor=white)](https://pypi.org/project/besser/)
[![PyPI - Downloads](https://static.pepy.tech/badge/besser)](https://pypi.org/project/besser/)
[![Documentation Status](https://readthedocs.org/projects/besser/badge/?version=latest)](https://besser.readthedocs.io/en/latest/)
[![PyPI - License](https://img.shields.io/pypi/l/besser)](https://opensource.org/license/MIT)
[![LinkedIn](https://img.shields.io/badge/-LinkedIn-blue?logo=Linkedin&logoColor=white)](https://www.linkedin.com/company/besser-pearl)
[![GitHub Repo stars](https://img.shields.io/github/stars/besser-pearl/besser?style=social)](https://star-history.com/#besser-pearl/besser)

BESSER is a [low-modeling](https://modeling-languages.com/welcome-to-the-low-modeling-revolution/) [low-code](https://lowcode-book.com/) open-source platform. BESSER (Building bEtter Smart Software fastER) is funded thanks to an [FNR Pearl grant](https://modeling-languages.com/a-smart-low-code-platform-for-smart-software-in-luxembourg-goodbye-barcelona/) led by the [Luxembourg Institute of Science and Technology](https://www.list.lu/) with the participation of the [Snt/University of Luxembourg](https://www.uni.lu/snt-en/) and open to all your contributions!

The BESSER low-code platform is built on top of [B-UML](https://besser.readthedocs.io/en/latest/buml_language.html) our Python-based personal interpretation of a "Universal Modeling Language" (yes, heavily inspired and a simplified version of the better known UML, the Unified Modeling Language). 
With B-UML you can specify your software application and then use any of the [code-generators available](https://besser.readthedocs.io/en/latest/generators.html) to translate your model into executable code suitable for various applications, such as Django models or database structures compatible with SQLAlchemy.

**Check out the official [documentation](https://besser.readthedocs.io/en/latest/)**

## Basic Installation

BESSER works with Python 3.9+. We recommend creating a virtual environment (e.g. [venv](https://docs.python.org/3/tutorial/venv.html), [conda](https://docs.conda.io/en/latest/)).

The latest stable version of BESSER is available in the Python Package Index (PyPi) and can be installed using

    $ pip install besser

BESSER can be used with any of the popular IDEs for Python development such as [VScode](https://code.visualstudio.com/), [PyCharm](https://www.jetbrains.com/pycharm/), [Sublime Text](https://www.sublimetext.com/), etc.

## Running BESSER Locally

If you are interested in developing new code generators or designing BESSER extensions, you can download and modify the full codebase, including tests and examples.

### Step 1: Clone the repository

    $ git clone https://github.com/BESSER-PEARL/BESSER.git
    $ cd BESSER

### Step 2: Create a virtual environment

Run the setup script to create a virtual environment (if not already created), install the requirements, and configure the ``PYTHONPATH``. This ensures compatibility with IDEs (like VSCode) that may not automatically set the ``PYTHONPATH`` for recognizing *besser* as an importable module.

    $ python setup_environment.py

**Note:** Each time you start your IDE, run the `setup_environment.py` script to ensure the environment is properly configured.

### Step 3: Run an example

To verify the setup, you can run a basic example.

    $ cd tests/structural/library
    $ python library.py

## Examples
If you want to try examples, check out the [BESSER-examples](https://github.com/BESSER-PEARL/BESSER-examples) repository!

## Contributing

We encourage contributions from the community and any comment is welcome!

If you are interested in contributing to this project, please read the [CONTRIBUTING.md](CONTRIBUTING.md) file.

## How to cite BESSER

This repository has the CITATION.cff file, which activates the "Cite this repository" button in the About section (right side of the repository). The citation is in APA and BibTex format.

## Code of Conduct

At BESSER, our commitment is centered on establishing and maintaining development environments that are welcoming, inclusive, safe and free from all forms of harassment. All participants are expected to voluntarily respect and support our [Code of Conduct](CODE_OF_CONDUCT.md).

## Governance

The development of this project follows the governance rules described in the [GOVERNANCE.md](GOVERNANCE.md) document.

## Contact
You can reach us at: [info@besser-pearl.org](mailto:info@besser-pearl-org)

Website: https://besser-pearl.github.io/website/

## License

This project is licensed under the [MIT](https://mit-license.org/) license.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "besser",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "uml, code generation, python",
    "author": "Luxembourg Institute of Science and Technology",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/d9/6a/edfe03916118469cfeed0682e7b7bda0d53158c8b521369e8a955740770e/besser-2.1.0.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\r\n  <img src=\"./docs/source/_static/besser_logo_light.png\" alt=\"BESSER platform\" width=\"500\"/>\r\n</div>\r\n\r\n[![Python](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11-blue?logo=python&logoColor=gold)](https://pypi.org/project/besser/)\r\n[![PyPI version](https://img.shields.io/pypi/v/besser?logo=pypi&logoColor=white)](https://pypi.org/project/besser/)\r\n[![PyPI - Downloads](https://static.pepy.tech/badge/besser)](https://pypi.org/project/besser/)\r\n[![Documentation Status](https://readthedocs.org/projects/besser/badge/?version=latest)](https://besser.readthedocs.io/en/latest/)\r\n[![PyPI - License](https://img.shields.io/pypi/l/besser)](https://opensource.org/license/MIT)\r\n[![LinkedIn](https://img.shields.io/badge/-LinkedIn-blue?logo=Linkedin&logoColor=white)](https://www.linkedin.com/company/besser-pearl)\r\n[![GitHub Repo stars](https://img.shields.io/github/stars/besser-pearl/besser?style=social)](https://star-history.com/#besser-pearl/besser)\r\n\r\nBESSER is a [low-modeling](https://modeling-languages.com/welcome-to-the-low-modeling-revolution/) [low-code](https://lowcode-book.com/) open-source platform. BESSER (Building bEtter Smart Software fastER) is funded thanks to an [FNR Pearl grant](https://modeling-languages.com/a-smart-low-code-platform-for-smart-software-in-luxembourg-goodbye-barcelona/) led by the [Luxembourg Institute of Science and Technology](https://www.list.lu/) with the participation of the [Snt/University of Luxembourg](https://www.uni.lu/snt-en/) and open to all your contributions!\r\n\r\nThe BESSER low-code platform is built on top of [B-UML](https://besser.readthedocs.io/en/latest/buml_language.html) our Python-based personal interpretation of a \"Universal Modeling Language\" (yes, heavily inspired and a simplified version of the better known UML, the Unified Modeling Language). \r\nWith B-UML you can specify your software application and then use any of the [code-generators available](https://besser.readthedocs.io/en/latest/generators.html) to translate your model into executable code suitable for various applications, such as Django models or database structures compatible with SQLAlchemy.\r\n\r\n**Check out the official [documentation](https://besser.readthedocs.io/en/latest/)**\r\n\r\n## Basic Installation\r\n\r\nBESSER works with Python 3.9+. We recommend creating a virtual environment (e.g. [venv](https://docs.python.org/3/tutorial/venv.html), [conda](https://docs.conda.io/en/latest/)).\r\n\r\nThe latest stable version of BESSER is available in the Python Package Index (PyPi) and can be installed using\r\n\r\n    $ pip install besser\r\n\r\nBESSER can be used with any of the popular IDEs for Python development such as [VScode](https://code.visualstudio.com/), [PyCharm](https://www.jetbrains.com/pycharm/), [Sublime Text](https://www.sublimetext.com/), etc.\r\n\r\n## Running BESSER Locally\r\n\r\nIf you are interested in developing new code generators or designing BESSER extensions, you can download and modify the full codebase, including tests and examples.\r\n\r\n### Step 1: Clone the repository\r\n\r\n    $ git clone https://github.com/BESSER-PEARL/BESSER.git\r\n    $ cd BESSER\r\n\r\n### Step 2: Create a virtual environment\r\n\r\nRun the setup script to create a virtual environment (if not already created), install the requirements, and configure the ``PYTHONPATH``. This ensures compatibility with IDEs (like VSCode) that may not automatically set the ``PYTHONPATH`` for recognizing *besser* as an importable module.\r\n\r\n    $ python setup_environment.py\r\n\r\n**Note:** Each time you start your IDE, run the `setup_environment.py` script to ensure the environment is properly configured.\r\n\r\n### Step 3: Run an example\r\n\r\nTo verify the setup, you can run a basic example.\r\n\r\n    $ cd tests/structural/library\r\n    $ python library.py\r\n\r\n## Examples\r\nIf you want to try examples, check out the [BESSER-examples](https://github.com/BESSER-PEARL/BESSER-examples) repository!\r\n\r\n## Contributing\r\n\r\nWe encourage contributions from the community and any comment is welcome!\r\n\r\nIf you are interested in contributing to this project, please read the [CONTRIBUTING.md](CONTRIBUTING.md) file.\r\n\r\n## How to cite BESSER\r\n\r\nThis repository has the CITATION.cff file, which activates the \"Cite this repository\" button in the About section (right side of the repository). The citation is in APA and BibTex format.\r\n\r\n## Code of Conduct\r\n\r\nAt BESSER, our commitment is centered on establishing and maintaining development environments that are welcoming, inclusive, safe and free from all forms of harassment. All participants are expected to voluntarily respect and support our [Code of Conduct](CODE_OF_CONDUCT.md).\r\n\r\n## Governance\r\n\r\nThe development of this project follows the governance rules described in the [GOVERNANCE.md](GOVERNANCE.md) document.\r\n\r\n## Contact\r\nYou can reach us at: [info@besser-pearl.org](mailto:info@besser-pearl-org)\r\n\r\nWebsite: https://besser-pearl.github.io/website/\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT](https://mit-license.org/) license.\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "BESSER",
    "version": "2.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/BESSER-PEARL/BESSER/issues",
        "Documentation": "https://besser.readthedocs.io/en/latest/",
        "Source Code": "https://github.com/BESSER-PEARL/BESSER"
    },
    "split_keywords": [
        "uml",
        " code generation",
        " python"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "61ad4b6b6842aa62c06d9d9c06f4c7c5c660ce80c7c967861751b0a8a996b20b",
                "md5": "2e440d684a02677003b8b1b586f676b3",
                "sha256": "0e732ce0e07ab139b838ea1cdcff317fccfb8e009af16337d961849c1d7d67d4"
            },
            "downloads": -1,
            "filename": "besser-2.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2e440d684a02677003b8b1b586f676b3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 187277,
            "upload_time": "2025-01-08T14:10:15",
            "upload_time_iso_8601": "2025-01-08T14:10:15.316763Z",
            "url": "https://files.pythonhosted.org/packages/61/ad/4b6b6842aa62c06d9d9c06f4c7c5c660ce80c7c967861751b0a8a996b20b/besser-2.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d96aedfe03916118469cfeed0682e7b7bda0d53158c8b521369e8a955740770e",
                "md5": "e9ddde8f00811692487a7e43cdf7befa",
                "sha256": "4cb42980a6a426c727155a60c83279a6d722c2aa776a3973a41c7ad728cdce6a"
            },
            "downloads": -1,
            "filename": "besser-2.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "e9ddde8f00811692487a7e43cdf7befa",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 153971,
            "upload_time": "2025-01-08T14:10:16",
            "upload_time_iso_8601": "2025-01-08T14:10:16.624468Z",
            "url": "https://files.pythonhosted.org/packages/d9/6a/edfe03916118469cfeed0682e7b7bda0d53158c8b521369e8a955740770e/besser-2.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-08 14:10:16",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "BESSER-PEARL",
    "github_project": "BESSER",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "Arpeggio",
            "specs": [
                [
                    "==",
                    "2.0.2"
                ]
            ]
        },
        {
            "name": "colorama",
            "specs": [
                [
                    "==",
                    "0.4.6"
                ]
            ]
        },
        {
            "name": "iniconfig",
            "specs": [
                [
                    "==",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": []
        },
        {
            "name": "pluggy",
            "specs": [
                [
                    "==",
                    "1.2.0"
                ]
            ]
        },
        {
            "name": "pytest",
            "specs": [
                [
                    "==",
                    "7.4.0"
                ]
            ]
        },
        {
            "name": "python-multipart",
            "specs": [
                [
                    "==",
                    "0.0.17"
                ]
            ]
        },
        {
            "name": "setuptools",
            "specs": [
                [
                    "==",
                    "68.2.2"
                ]
            ]
        },
        {
            "name": "textX",
            "specs": [
                [
                    "==",
                    "3.1.1"
                ]
            ]
        },
        {
            "name": "jinja2",
            "specs": [
                [
                    "==",
                    "3.1.2"
                ]
            ]
        },
        {
            "name": "antlr4-python3-runtime",
            "specs": [
                [
                    "==",
                    "4.13.1"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    "==",
                    "2.31.0"
                ]
            ]
        },
        {
            "name": "fastapi",
            "specs": [
                [
                    "==",
                    "0.110.0"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    "==",
                    "2.6.3"
                ]
            ]
        },
        {
            "name": "uvicorn",
            "specs": [
                [
                    "==",
                    "0.28.0"
                ]
            ]
        },
        {
            "name": "SQLAlchemy",
            "specs": [
                [
                    "==",
                    "2.0.29"
                ]
            ]
        },
        {
            "name": "httpx",
            "specs": [
                [
                    "==",
                    "0.27.0"
                ]
            ]
        },
        {
            "name": "docker",
            "specs": [
                [
                    "==",
                    "7.1.0"
                ]
            ]
        }
    ],
    "lcname": "besser"
}
        
Elapsed time: 0.43938s