Introducing eTrack

eTrack is an application that manages tasks. This project is meant to be a comprehensive tutorial that demonstrates the use of several Eclipse technologies, and current best practices for architecture, design, development, testing, build, and deployment.  I would like the architecture to be as open as possible to accommodate different implementations of the various components of the application.  There will, however, be a couple of things set in stone.  The application will be based on OSGi, have a RESTful client / server architecture, and will use HTTP to communicate between client and server.

To get started, the initial implementation will use EMF for the domain model, MongoDB for the backing store, Restlet for the RESTful web services, Jetty for the web container, and simple HTML web pages for the client.  It would also be nice, at some point, to have a GWT client, a SproutCore client, and Mylyn integration.

The project is hosted at EclipseLabs and the place to start is:

I would like to use Gerrit for source control, and Tycho and Jenkins for build, but I’m currently not aware of any free hosting for these services.  If I can’t find free hosting, I might consider hosting on my home server and mirroring the source on GitHub for public access.  Issue tracking will initially be done on the EclipseLabs Issues page until we can “eat our own cooking”.

Here is a first attempt at a domain model (I’ve taken a little liberty with the UML notation in that solid diamonds denote containment within the same resource while open diamonds denote cross-document containment):

DomainI hope to start working on the implementation at EclipseCon.  If you are interested in participating, please comment below describing what you would like to work on, or find me at EclipseCon and I’ll be happy to discuss this with you.


6 thoughts on “Introducing eTrack

  1. wow. I’m looking forward to learn java/eclipse/OSGI/EMF. If you have simple task for a newbie please let me know.
    Since I’m currently unemployed, I could spend considerable effort to the project (if properly guided, of course 🙂

  2. Here is another volunteer 😉
    I’m currently trying to do something very similar and started with EMF/CDO. Maybe it would be possible to share some things.

    Feel free to drop me a note! Maybe you could set up a Google Group or sth similar and outline the project a little bit more.


  3. Hi,

    I’m currently working on a (larger scale) application sharing a lot of your architecture (OSGi, REST, Vaadin (GWT), …).
    I’m very curious to see how this tutorial app works out, there might be a lot to learn!

    If you can use the extra help, just give a shout!

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s