"A Tool for Multi-Paradigm Modelling"

bentleyjoakes 11da88e5ef Fix model transformation crash with created element. 4 年之前
client 4f27073f16 Be more precise about which changes to a model mark it as unsaved. 4 年之前
doc aa3fc92ef4 Fix multi-line slash in doc. 4 年之前
exported_to_md 445b9bbc40 added metadepth and pypdevs exporter 8 年之前
exported_to_pypdevs 445b9bbc40 added metadepth and pypdevs exporter 8 年之前
exported_to_sccdxml 7f7cd0ec6f Shift everything to "velocity" instead of "speed" in SCCD train code 7 年之前
mt 11da88e5ef Fix model transformation crash with created element. 4 年之前
packaging a21704b7df Update to 0.8.4 5 年之前
plugins 38b8a2db2c Downgrade ModelVerse toolbar to alpha status. Create documentation for Ecore and ModelVerse toolbars. 6 年之前
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 年之前
.travis.yml 02442b9404 Try larger virtual screen. 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. 4 年之前
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. 5 年之前
asworker.js d3fc78f25b Fix revert. 5 年之前
csworker.js d62c99c723 Fix pattern metamodel compiling unneeded models. 4 年之前
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 13de976088 Update package to fix tests. 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 e38d73599d Specify nightwatch path. 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