"A Tool for Multi-Paradigm Modelling"

Bentley James Oakes 37fcf86fd8 Fix merge. 6 lat temu
client 37fcf86fd8 Fix merge. 6 lat temu
doc ffe9222099 Merge branch 'master' of github.com:AToMPM/atompm 7 lat temu
exported_to_md 445b9bbc40 added metadepth and pypdevs exporter 8 lat temu
exported_to_pypdevs 445b9bbc40 added metadepth and pypdevs exporter 8 lat temu
exported_to_sccdxml 7f7cd0ec6f Shift everything to "velocity" instead of "speed" in SCCD train code 7 lat temu
mt 4b01b6d83a Fix getting length of bridge in mt. 6 lat temu
packaging 0e4de81e87 Unify Python scripts. 7 lat temu
plugins c60a7744ad Add test for ecore toolbar, and fixes to exporting code. 6 lat temu
tests 37fcf86fd8 Fix merge. 6 lat temu
users 51ddc9b031 Add initial version of ModelVerse toolbar 6 lat temu
.eslintignore 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu
.eslintrc.json 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu
.gitattributes 68ae2d448c avoid that .sh script are checked out with crlf 8 lat temu
.gitignore a9cfb799f9 Fix up documentation 7 lat temu
.travis.yml 02442b9404 Try larger virtual screen. 7 lat temu
COPYING cdc03fc724 initial commit (v0.5.4) 9 lat temu
COPYING.LESSER cdc03fc724 initial commit (v0.5.4) 9 lat temu
README.md c031038185 Update README with six dependency 7 lat temu
REFS e09455202a Remove etc directory. 7 lat temu
___dataurize.js 9424f068b3 Unify license details. 7 lat temu
___do.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu
___fs++.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu
__worker.js ace8899ed6 Merge pull request #61 from AToMPM/access-headers 7 lat temu
asworker.js ab5182121e Add better MT debugging messages, and provide default value if none given. 7 lat temu
csworker.js aca46a66fe When creating association, can now let csworker figure out path between elements. 7 lat temu
favicon.png 5c11106550 favicon added 9 lat temu
favicon.svg 5c11106550 favicon added 9 lat temu
httpwsd.js a0ea5138a6 Add Access-Control-Allow-Origin to headers. 7 lat temu
libmt.js acb5cd12ba Turn libmt into module. 7 lat temu
libsvg.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu
mmmk.js 0a180528c5 Add explicit 'verify' event for constraints/actions. 7 lat temu
nightwatch.conf.js e400e35786 Disable nightwatch reports. 6 lat temu
package-lock.json 28c4494f3e Change version number for release v0.8.1 7 lat temu
package.json 28c4494f3e Change version number for release v0.8.1 7 lat temu
run.bat cdc03fc724 initial commit (v0.5.4) 9 lat temu
run_AToMPM.sh 3b412bdc96 fixes issue #26 by removing the downloaded files. 8 lat temu
run_AToMPM_local.sh 05a4a168c4 Change Linux auto-run script to Chrome. 7 lat temu
run_tests.sh 1f92ebef47 Add testing in the Chrome browser (#27) 7 lat temu
styleinfo.js 9424f068b3 Unify license details. 7 lat temu
types.js 0a180528c5 Add explicit 'verify' event for constraints/actions. 7 lat temu
utils.js 991fe804aa Add ESLint config. Fix semi-colon usage. 7 lat temu

README.md

AToMPM - A Tool for Multi-Paradigm Modelling

AToMPM 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

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.

To install AToMPM, follow these steps:

  • Download and install the latest Python (2.7.X or 3.X.X)
  • 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
  • Download and install six
    • Use the pip package manager (comes with Python)
      • For Python2: pip install six
      • For Python3: pip3 install six
  • Download and install node.js
  • Download and unzip the source files for 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

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 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

  • 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 for AToMPM can be found here: https://atompm.readthedocs.io

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