Metadata-Version: 2.1
Name: silvera
Version: 0.2.3
Summary: Tool for generating microservice architectures.
Home-page: https://gitlab.com/alensuljkanovic/silvera
Author: Alen Suljkanovic
Author-email: alienized91@gmail.com
License: MIT
Keywords: microservices dsl generator compiler
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Software Development :: Interpreters
Classifier: Topic :: Software Development :: Compilers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Description-Content-Type: text/markdown
Requires-Dist: textx
Requires-Dist: jinja2
Requires-Dist: click

# Silvera

Silvera is an tool for acceleration of development of microservice architectures.

Silvera consists of two parts: a domain-specific language - SilveraDSL, and
a Silvera compiler. SilveraDSL is a declarative language for modeling microservice
architectures based on [textX](https://github.com/textX/textX), and it is designed
in a way that directly implements domain-related design patterns. SilveraDSL
specifications are used by the compiler to produce executable program code.

Silvera is fully implemented in Python.

## Installation

You can use `pip` to install Silvera:

```
$ pip install silvera
```

To verify that you have installed Silvera correctly run the following command:

```
$ silvera
```

You should get output like this:

```
Usage: silvera [OPTIONS] COMMAND [ARGS]...

Options:
  --debug  Debug/trace output.
  --help   Show this message and exit.

Commands:
  check            Checks if created model is valid.
  compile          Compiles application code into to provided output...
  evaluate         Evaluates the architecture for given project.
  init             Creates initial Silvera project
  list-generators  Lists all currently available code generators
  visualize        Visualize the architecture for given project.
```


## Feature highlights

* **Designed patterns directly implemented in language**

* **Project modularization - imports**

* **Project evaluation based on metrics**

* **Automatic code generation**

* **Support for custom code generators via plugins**


## User guide

For documentation and tutorials, please check Silvera's wiki page: [here](https://gitlab.com/alensuljkanovic/silvera/-/wikis/home).


## Python versions

Tested with Python 3.7.4

