"A Tool for Multi-Paradigm Modelling"

BentleyJOakes dbe88c57a0 Add CI with GitHub Actions (#95) 5 роки тому
.github dbe88c57a0 Add CI with GitHub Actions (#95) 5 роки тому
client 516eea0d23 Mark all changes as making model unsaved 5 роки тому
doc aa3fc92ef4 Fix multi-line slash in doc. 5 роки тому
exported_to_md 445b9bbc40 added metadepth and pypdevs exporter 9 роки тому
exported_to_pypdevs 445b9bbc40 added metadepth and pypdevs exporter 9 роки тому
exported_to_sccdxml 7f7cd0ec6f Shift everything to "velocity" instead of "speed" in SCCD train code 8 роки тому
mt 2d0a3c8f1c Raise Exception for default code in rules 5 роки тому
packaging a21704b7df Update to 0.8.4 5 роки тому
plugins 38b8a2db2c Downgrade ModelVerse toolbar to alpha status. Create documentation for Ecore and ModelVerse toolbars. 7 роки тому
tests d73a9103a1 Add test for renaming files. 5 роки тому
users 45aa18e799 Remove Modelverse connector from master. 6 роки тому
.eslintignore 991fe804aa Add ESLint config. Fix semi-colon usage. 7 роки тому
.eslintrc.json 991fe804aa Add ESLint config. Fix semi-colon usage. 7 роки тому
.gitattributes 68ae2d448c avoid that .sh script are checked out with crlf 8 роки тому
.gitignore a9cfb799f9 Fix up documentation 7 роки тому
COPYING cdc03fc724 initial commit (v0.5.4) 9 роки тому
COPYING.LESSER cdc03fc724 initial commit (v0.5.4) 9 роки тому
README.md e04862b9be Unify installation instructions in README and docs. 5 роки тому
REFS e09455202a Remove etc directory. 7 роки тому
___dataurize.js 9424f068b3 Unify license details. 7 роки тому
___do.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 роки тому
___fs++.js d6295b5a98 Fix merge. 6 роки тому
__worker.js 7ec8b5837b Make csworker a module and properly share variables with __worker. 6 роки тому
asworker.js d3fc78f25b Fix revert. 6 роки тому
csworker.js d62c99c723 Fix pattern metamodel compiling unneeded models. 5 роки тому
favicon.png 5c11106550 favicon added 9 роки тому
favicon.svg 5c11106550 favicon added 9 роки тому
httpwsd.js 260a30f6f2 Guard against injection in some file system calls. 6 роки тому
libmt.js acb5cd12ba Turn libmt into module. 7 роки тому
libsvg.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 роки тому
mmmk.js 0a180528c5 Add explicit 'verify' event for constraints/actions. 7 роки тому
nightwatch.conf.js dbe88c57a0 Add CI with GitHub Actions (#95) 5 роки тому
package-lock.json a2aaf5fb65 Updated packages for testing. 5 роки тому
package.json 23a411ca7b Update version to 0.8.5. 5 роки тому
run.bat cdc03fc724 initial commit (v0.5.4) 9 роки тому
run_AToMPM_local.sh b61f5365a4 Add more output to running script. Remove specification of Python version. 5 роки тому
run_tests.sh dbe88c57a0 Add CI with GitHub Actions (#95) 5 роки тому
styleinfo.js 9424f068b3 Unify license details. 7 роки тому
types.js 0a180528c5 Add explicit 'verify' event for constraints/actions. 7 роки тому
utils.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 роки тому

README.md

AToMPM - A Tool for Multi-Paradigm Modelling

AToMPM is an open-source research framework for generating domain-specific modeling web-based tools that run on the cloud. AToMPM facilitates designing DSML environments, 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), as it is completely modeled by itself.

Portable Zip File

A portable .zip version of AToMPM is available for Windows. This portable version is intended for those users with limited installation capabilities, such that they can skip these installation instructions.

Please check https://github.com/AToMPM/atompm/releases for the newest release, and download the atompm-portable.zip file.

To run the portable version, execute AToMPM.bat.

Installation

To install AToMPM, follow these steps:

  1. Download and install the latest Python
    • This can be either Python 2.7.X or 3.X.X, but 3.X.X is strongly recommended
    • Use a package manager on Linux
    • Or visit http://python.org/download/
  2. Download and install python-igraph
    • Use the pip package manager (comes with Python)
      • For Python2: pip install python-igraph
      • For Python3: pip3 install python-igraph
    • For Windows, you may need to install the compiled igraph core
      • http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-igraph
  3. Download and install six
    • Use the pip package manager (comes with Python)
      • For Python2: pip install six
      • For Python3: pip3 install six
  4. Download and install node.js
  5. Download and unzip the source files for the newest AToMPM release from https://github.com/AToMPM/atompm/releases
  6. In that unzipped AToMPM folder, run the command npm install
    • If you do not need to run tests on AToMPM, you can run npm install --production

Usage

The commands below are for starting the AToMPM server. Note that the default port is 8124.

Once started, the server can be connected to by accessing http://localhost:8124/atompm in either the Firefox or Chrome browsers.

Windows

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

Mac or Linux

  • Execute these commands in different terminals

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

Documentation

Documentation for AToMPM can be found here: https://atompm.readthedocs.io/en/latest/

Bug Reporting/Feedback

Please create an issue for your bug or feedback here: https://github.com/AToMPM/atompm/issues

Testing

To run tests on AToMPM, run `npm test'. Ensure that your resolution of your screen is set quite high, as elements cannot be placed by the script off-screen.

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