"A Tool for Multi-Paradigm Modelling"

Bentley James Oakes acb5cd12ba Turn libmt into module. 7 rokov pred
.etc cdc03fc724 initial commit (v0.5.4) 9 rokov pred
.manual b6cf7cc672 Changed defaults in transformation rules to make sense. LHS and RHS conditions are set to 'result = True', RHS action to 'pass'. An action was added to NAC/LHS/RHS elements to set the value of RAMified attributes to 'result = True' or 'result = getAttr()' when they are connected to NAC/LHS or RHS, respectively. For this, a new methods called 'getAttrNames' was added to the metamodelling API 9 rokov pred
client 8a1a265956 Fix minor linting errors. 7 rokov pred
doc 9424f068b3 Unify license details. 7 rokov pred
exported_to_md 445b9bbc40 added metadepth and pypdevs exporter 8 rokov pred
exported_to_pypdevs 445b9bbc40 added metadepth and pypdevs exporter 8 rokov pred
exported_to_sccdxml 7f7cd0ec6f Shift everything to "velocity" instead of "speed" in SCCD train code 7 rokov pred
mt 9424f068b3 Unify license details. 7 rokov pred
plugins f4bf1241dd Add Ecore toolbar. 7 rokov pred
tests 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
users f4bf1241dd Add Ecore toolbar. 7 rokov pred
.eslintignore 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
.eslintrc.json 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
.gitattributes 68ae2d448c avoid that .sh script are checked out with crlf 8 rokov pred
.gitignore 993e35bf24 Update .gitignore 7 rokov pred
.travis.yml 1f92ebef47 Add testing in the Chrome browser (#27) 7 rokov pred
CHANGES.md b327b2f6b8 Update version to 0.7.0. 7 rokov pred
COPYING cdc03fc724 initial commit (v0.5.4) 9 rokov pred
COPYING.LESSER cdc03fc724 initial commit (v0.5.4) 9 rokov pred
README.md 9424f068b3 Unify license details. 7 rokov pred
___dataurize.js 9424f068b3 Unify license details. 7 rokov pred
___do.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
___fs++.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
__worker.js acb5cd12ba Turn libmt into module. 7 rokov pred
asworker.js a4ac417797 Make ASWorker into module. 7 rokov pred
csworker.js b20c31cce7 Merge pull request #35 from AToMPM/license-unify 7 rokov pred
favicon.png 5c11106550 favicon added 9 rokov pred
favicon.svg 5c11106550 favicon added 9 rokov pred
httpwsd.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
libmt.js acb5cd12ba Turn libmt into module. 7 rokov pred
libsvg.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
manual.pdf b6cf7cc672 Changed defaults in transformation rules to make sense. LHS and RHS conditions are set to 'result = True', RHS action to 'pass'. An action was added to NAC/LHS/RHS elements to set the value of RAMified attributes to 'result = True' or 'result = getAttr()' when they are connected to NAC/LHS or RHS, respectively. For this, a new methods called 'getAttrNames' was added to the metamodelling API 9 rokov pred
mmmk.js acb5cd12ba Turn libmt into module. 7 rokov pred
nightwatch.conf.js 9424f068b3 Unify license details. 7 rokov pred
package.json 6ea0776e2f Update with new website. 7 rokov pred
run.bat cdc03fc724 initial commit (v0.5.4) 9 rokov pred
run_AToMPM.sh 3b412bdc96 fixes issue #26 by removing the downloaded files. 8 rokov pred
run_AToMPM_local.sh 093bfa9ef4 Update run local script to shut down server and mt when exiting. 7 rokov pred
run_tests.sh 1f92ebef47 Add testing in the Chrome browser (#27) 7 rokov pred
styleinfo.js 9424f068b3 Unify license details. 7 rokov pred
types.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred
utils.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 rokov pred

README.md

AToMPM - A Tool for Multi-Paradigm Modelling

AToMPM stands for "A Tool for Multi-Paradigm Modeling". It is a research framework from which you can generate domain-specific modeling web-based tools that run on the cloud. AToMPM is an open-source framework for designing DSML environements, performing model transformations, and manipulating and managing models. It runs completely over the web, making it independent from any operating system, platform, or device it may execute on. AToMPM follows the philosophy of modeling everything explicitly, at the right level of abstraction(s), using the most appropriate formalism(s) and process(es), being completely modeled by itself.

Installation

To install AToMPM, follow these steps:

  • Download and install the latest Python 2.7.X
  • Download and install python-igraph
    • Use the pip package manager (comes with Python)
    • pip install python-igraph
  • Download and install node.js
  • Download and unzip the newest AToMPM release from https://github.com/AToMPM/atompm/releases
  • In the AToMPM folder, run the command npm install
    • If you do not need to run tests on AToMPM, you can run npm install --production

Usage

Windows

To run AToMPM on Windows, execute the run.bat script inside of the main AToMPM folder.

Mac or Linux

  • Execute commands in different terminals

    1. Execute node httpwsd.js in the main AToMPM folder
    2. Execute python2 mt\main.py in the main AToMPM folder
    3. Open a browser (preferably Chrome) and navigate to http://localhost:8124/atompm
  • The above steps are automated by the run_AToMPM_local.sh script

  • Note that the run_AToMPM.sh script can automate the installation and usage of AToMPM

    • The first time you run this script, all dependencies are automatically downloaded and installed in the dependencies/ folder.
    • If, for any reason, the download process is interrupted or you experience problems with AToMPM, remove the dependencies/ folder and run the script again.

Documentation

Documentation can be found here: https://msdl.uantwerpen.be/documentation/AToMPM/index.html

Testing

To run tests on AToMPM, run `npm test'

LICENSING

The AToMPM project is licensed under the LGPL as stated in COPYING.lesser.

AToMPM is copyright of the AToMPM team, which includes Raphael Mannadiar, Conner Hansen, Eugene Syriani, Hans Vangheluwe, Simon Van Mierlo, Huseyin Ergin, Jonathan Corley, Yentl Van Tendeloo, Vasco Sousa, and Bentley James Oakes