silvera 0.3.1

Creator: bradpython12

Last updated:

Add to Cart

Description:

silvera 0.3.1

Silvera
Silvera is a declarative language for modeling microservice
architectures based on textX, and it is designed
in a way that directly implements domain-related design patterns.
Silvera is:

lightweight and editor-agnostic language - you can use text editor of your choice to write Silvera programs.
built with heterogeneity in mind - Silvera's compiler can produce code for any programming language or framework since
code generators are registered as plugins.

In addition, Silvera uses microservice-tailored metrics to evaluate the architecture
of the designed system and automatically generates the documentation.
Architecture Evaluation Processor comes with a set of
predefined metrics,
but you can also add your own!.
Silvera is fully implemented in Python.
Quick intro
Here is a small example where we define a service registry and one microservice.
# setup.si

service-registry ServiceRegistry {
client_mode=False
deployment {
version="0.0.1"
port=9091
url="http://localhost"
}
}

import "setup.si"

service Bookstore {

service_registry=ServiceRegistry

api {

@crud
typedef Book [
@id str isbn
@required str title
@required str author
str category
@required double price
]

@rest(method=GET)
list<Book> listBooks()

@rest(method=GET)
bool bookExists(str isbn)

@rest(method=GET)
double bookPrice(str isbn)
}

}

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, visit docs: https://alensuljkanovic.github.io/silvera/
Python versions
Tested with Python 3.7.4+

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.