×

Status message

This proposal has been approved and the Web Modeling Framework project has been created.

Web Modeling Framework

Basics
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project: 
Background: 

We have developed GenMyModel, an online modeling tool (https://www.genmymodel.com), using several Eclipse projects, specially EMF.

The choice to release the GenMyModel framework as an open source project has been made since the beginning.

Scope: 

The scope of this project is to provide a framework to easily develop any online model and diagram editor based on an EMF meta-model. The framework support both model and diagram edition.

The purpose of the framework is to help building visual editor. You can use it to built a visual editor for any kind of EMF model. It already has been used to build several UML diagram editors (e.g. class and sequence).

The scope of this project is the framework itself, not the editors built with it (they could be in distinct projects), but as a sample, the Ecore model and diagram editor will be provided.

The framework provides mechanisms to send the model from the server to the client and to send modifications from the client to the server. The model persistence is left to the server implementation. It can be based on a simple file system, a database or something like CDO. This persistence is not part of the web modeling framework.

Description: 

The Web Modeling Project is similar to the GMF runtime project or the Graphiti project, but for the web world. It is used to build GenMyModel.

The Web Modeling Project goal is to provide as many online diagramming and modeling features as possible "out of box".
The framework already implements some diagramming behaviors you just have to choose to implement your own online diagramming editor.

It provides some abstract classes you have to inherit to get your own graphical widgets. Both diagramming widgets and modeling widget (treeview, property panels) are supported.
The diagram elements design is provided using CSS.

The Web Modeling Project framework supports nodes, links, and node hierarchy (e.g. packages).

The Web Modeling Project is based on EMF and GWT technologies. It produces pure HTML5 / Javascript client.

Why Here?: 

The Web Modeling Project is developed to be a perfect complement to EMF. It allows to the community the ability to quickly develop web based model and diagram editors for EMF models.

Project Scheduling: 
  • Initial contribution: first semester 2015
  • V1 (stable API) during the last semester 2015
Future Work: 

The current framework version is already usable. It has been used to built several online editors: EMF, UML (classes, activities, sequences), Database and Flowchart.

The first step will be to bring all GenMyModel users that want to contribute to the Eclipse project and to help them to build new editors based on the Web Modeling Project.

Based on users and contributors feedbacks the framework API will be then stabilized.

The main new feature that will be added in the next months will be diagrams auto layout.

The opportunity to use the future GWT singular project for the Web Modeling Project will be evaluated.

 

People
Project Leads: 
Committers: 
Justin Trentesaux
Interested Parties: 

GenMyModel has now more than 100 000 registered users and many of them have asked to contribute.

Source Code
Initial Contribution: 

The Web Modeling Project has been developed by Axellience to build GenMyModel. All its code is currently owned by Axellience.

The third-party libraries used are:

  • EMF (EPL)
  • GWT (Apache Licence V2)
  • jQuery (MIT)
  • Dojo (Academic or BSD)
  • Cometd4GWT (Apache Licence V2)

The Web Modeling Project is already used (with GenMyModel) by more than 100 000 users. Some of them have asked to be able to contribute. 

Source Repository Type: 
Mirco Franzago's picture

Hi all, I found your project quite interesting. I knew about another project, called "Eugenia Live" from the Epsilon team guys (explained here http://modeling-languages.com/bootstrap-your-new-graphical-dsl-with-eugenia-live/ ). Eugenia Live project sounds similar to this Web Modeling Framework proposed by you. Is that true? Just to know if I correctly understand about your proposal. By the way, I'm really interested, I will follow your project. Good luck and regards. 

Amal Elgammal's picture

Great effort! We are in the process of developing a graphical web-based DSL, and we believe that your framework can significantly help us. However, I cant find any tutorials, developers manuals, examples, etc., and even how to download and use the framework. I would really appreciate your help in this aspect...

------------------------------------------------------
Dr Amal Elgammal
Assistant Professor
Faculty of Computer and Information Science
Information Systems Dept.
Cairo University
Homepage: amalelgammal.weebly.com

email: a.elgammal@fci-cu.edu.eg