All Projects → webgme → Webgme

webgme / Webgme

Licence: mit
Web-based Generic Modeling Environment

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Webgme

Formql
FormQL - A framework for building dynamic forms in Angular
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Realtaiizor
C# WinForm UI/UX Component Library
Stars: ✭ 109 (-2.68%)
Mutual labels:  framework
Basys
Toolbox for building full-stack Vue.js apps
Stars: ✭ 113 (+0.89%)
Mutual labels:  framework
Botonomous
A PHP Framework For Creating Autonomous Slack Bots
Stars: ✭ 109 (-2.68%)
Mutual labels:  framework
Framework
[NOT MAINTAINED] A full-featured PHP framework powering the server side of Webiny Platform. Can also be used as standalone library.
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Iframework
Simple Unity Framework
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Django Ra Erp
A Django based framework to create diverse business solutions, equipped with a reporting engine and a responsive dashboard.
Stars: ✭ 108 (-3.57%)
Mutual labels:  framework
Reactinterface
This is the repository for my course, Building a Web Interface with React.js on LinkedIn Learning and Lynda.com.
Stars: ✭ 113 (+0.89%)
Mutual labels:  framework
Kd
UI Framework for web applications.
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Evnestoreplatform
📱Electronic commerce iOS APP framework
Stars: ✭ 112 (+0%)
Mutual labels:  framework
Bulmaswatch
Themes for Bulma
Stars: ✭ 1,525 (+1261.61%)
Mutual labels:  framework
Slightphp
SlightPHP 高效的PHP敏捷开发框架
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Nanocaml
Nanopass for OCaml
Stars: ✭ 112 (+0%)
Mutual labels:  framework
Fabrix
Strongly Typed Modern Web Application Framework for Node.js and Browsers
Stars: ✭ 110 (-1.79%)
Mutual labels:  framework
Alpha
Craft your own web-based chatbot
Stars: ✭ 113 (+0.89%)
Mutual labels:  framework
Wally
Distributed Stream Processing
Stars: ✭ 1,461 (+1204.46%)
Mutual labels:  framework
Awesome New
A list of `.new` domains to perform online actions in one quick action.
Stars: ✭ 112 (+0%)
Mutual labels:  domains
Marklogic Data Hub
The MarkLogic Data Hub: documentation ==>
Stars: ✭ 113 (+0.89%)
Mutual labels:  framework
Petal
A modern, light CSS UI framework by Shakr
Stars: ✭ 113 (+0.89%)
Mutual labels:  framework
Elgg
A social networking engine in PHP/MySQL
Stars: ✭ 1,510 (+1248.21%)
Mutual labels:  framework

license Build Status Version Downloads

WebGME - Web-based Generic Modeling Environment

Note that this repository contains the full webgme app including a highly extendable graphical user interface and is the typical dependency a webgme app will depend on. To use the webgme framework without a packaged GUI - check out webgme-engine.

Create your own Domain Specific Modeling Languages (DSML) right in the browser. Specify modeling concepts, their relationships, attributes, and aspects by drawing a UML class diagram-based metamodel and WebGME automatically configures itself to support the DSML.

WebGME promotes collaboration where each change is translated into a micro-commit broadcast to all connected users. A lightweight branching scheme is transparently supported by the infrastructure. Code generators and externals tools can work on consistent snapshots (specific commits) while users can continue editing the models.

WebGME provides a variety of extension points for you to customize your application. See below for a list and explainations. All these can be neatly generated, shared and imported using a command line interface.

WebGME-User-Interface

Getting started

Dependencies

Server

  • NodeJS (version >= 4, CI tests are performed on versions 8.x, 10.x and LTS is recommended).
  • MongoDB (version >= 2.6).
  • Git (must be available in PATH).
  • Redis Note that this is only needed if you intend on running multiple webgme nodes behind a reverse proxy.

Browser

We aim to support all the major modern browsers. However we recommend using Chrome for two reasons: manual testing is mostly done using chrome and all performance profiling is done against the V8 JavaScript Engine.

Tutorials

  • Step by step tutorial - Explains meta-modeling in webgme and builds up a small application for Electrical Circuits.
  • Tutorial from seminar 2015 - Shows development techniques in webgme and builds up a Finite State Machine domain. This tutorial requires familiarity with meta-modeling.

Using WebGME

You can always try out webgme at our public deployment at webgme.org. After a certain point you probably want to host your own server with custom running code and visualization. At this point follow the instructions at 1.

  1. webgme-cli. This is the preferred way of using webgme as it allows you to:
  • Automatically generate boilerplate code for extensions (w/o manually configuring paths etc.).
  • Reuse components from other users.
  • Publish and share your work with others.
  • Updating to newer webgme releases only requires a npm install webgme and won't cause any conflicts.
  • Note that if cloning an existing repository constructed with webgme-cli, it is only necessary to install webgme-cli if you intend to create/import new components.
  1. For webgme developers, clone this repo.
  • install packages with npm npm install
  • launch mongod locally
  • start the server npm start

After the webgme server is up and there are no error messages in the console. Open a valid webgme address in the browser. The default is http://127.0.0.1:8888/, you should see all valid addresses in the console where you started webgme. To view the available documentation visit <host>/api.

Command line interface

The webgme-engine provides a range of bin scripts, see here for list of all.

Extensions

  • Plugins - Model interpretation for e.g. code generation.
  • Executor - Job execution framework over multiple worker nodes.
  • Rest Routers - Add custom REST API routes with access to gme-auth and storage APIs.
  • Constraints - Add custom constraints based on meta-types.
  • AddOns - Continuous model interpretation for e.g. constraint evaluation.
  • Webhooks - External event emitting based on changes in storage/models.
  • Layouts - Configure the layout of the generic UI.
  • Visualizers - Add complete visualizers to the generic UI.
  • Decorators - Add custom decoration to the nodes in the model editor.

See gme-config for available configuration parameters.

Change log

See CHANGELOG

Contributing

See CONTRIBUTING

License

See the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].