
PyEcore: a framework for building MDE-based tools in Python - vinc_e
https://github.com/pyecore/pyecore/
======
vinc_e
Just a few words about the project, PyEcore is a Model Driven Engineering
(MDE) framework written for Python 3. It allows you to handle models and
metamodels (structured data model), and gives the key you need for building
MDE-based tools and other applications based on a structured data model. It
supports out-of-the-box: data inheritance, two-ways relationship management
(opposite references), XMI/JSON (de)serialization, notification system,
reflexive API...

There is two projects that are connected to PyEcore: pyecoregen
([https://github.com/pyecore/pyecoregen](https://github.com/pyecore/pyecoregen))
that provides a framework for code generation based on Jinja2 templates
(model-to-text/m2t), and a WIP project to integrate PyEcore with textX
([https://github.com/igordejanovic/textX](https://github.com/igordejanovic/textX))
to provide parsing/AST to model (text-to-model/t2m)

The project is inspired by EMF, the Eclipse Modeling Framework, and tries to
be compliant with it through terminology and XMI format. The goal is to make a
full MDE environement for Python (data modeling, model-to-model, model-to-text
and text-to-model transformations) while beeing interoperable with EMF-Java
through XMI so EMF-based tools can be used if needed.

