<!DOCTYPE html>
<html lang="en">
<!--
/********************************************************************************
** Copyright (c) 2012 Obeo.
** All rights reserved. This program and the accompanying materials
** are made available under the terms of the Eclipse Public License v1.0
** which accompanies this distribution, and is available at
** http://www.eclipse.org/legal/epl-v10.html
**
** Contributors:
**    Stephane Begaudeau (Obeo) - initial API and implementation
*********************************************************************************/
-->
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <meta name="author" content="St&eacute;phane B&eacute;gaudeau">    

    <!-- IE6-8 support of HTML elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    
    <link href="../../assets/css/bootstrap.css" rel="stylesheet">
    <link href="../../assets/css/docs.css" rel="stylesheet">
    
    <title>Acceleo</title>
  </head>
  <body>
    <div class="container">
      <section id="official">
        <div class="page-header">
          <h1>Official Websites <small>most trusted sources of information</small></h1>
        </div>
        <ul>
          <li>Website: <a href="http://eclipse.org/acceleo/">http://eclipse.org/acceleo/</a></li>
          <li>Wiki: <a href="http://wiki.eclipse.org/Acceleo">http://wiki.eclipse.org/Acceleo</a></li>
          <li>Project Page: <a href="http://projects.eclipse.org/projects/modeling.m2t.acceleo">http://projects.eclipse.org/projects/modeling.m2t.acceleo</a></li>
        </ul>
      </section>
      
      <section id="community">
        <div class="page-header">
          <h1>Community and Social <small>outside of the Eclipse Foundation</small></h1>
        </div>
        <ul>
          <li>Acceleo Users Community: <a href="http://www.obeonetwork.com/group/acceleo">http://www.obeonetwork.com/group/acceleo</a></li>
          <li>Videos: <a href="http://www.obeonetwork.com/group/acceleo/page/from-the-model-to-the-android-application">From the model to the Android Application</a></li>
          <li>Best Practices Guide: <a href="http://docs.obeonetwork.com/acceleo">http://docs.obeonetwork.com/acceleo</a></li>
          <li>Google+: <a href="https://plus.google.com/u/0/b/114651471803085159652/">https://plus.google.com/u/0/b/114651471803085159652/</a></li>
          <li>Twitter: <a href="https://twitter.com/#!/acceleo">https://twitter.com/#!/acceleo</a></li>
          <li>Wikipedia: <a href="http://en.wikipedia.org/wiki/Acceleo">http://en.wikipedia.org/wiki/Acceleo</a></li>
          <li>Planet Acceleo: <a href="http://www.acceleo.org/pages/planet-acceleo/">http://www.acceleo.org/pages/planet-acceleo/</a></li>
          <li>Github Mirror: <a href="https://github.com/eclipse/acceleo">https://github.com/eclipse/acceleo</a></li>
        </ul>
        <p>
          You can find some of the developers of Acceleo on twitter and google+ too.
        </p>
        <ul>
          <li>Stephane Begaudeau (leader) Twitter: <a href="https://twitter.com/#!/sbegaudeau">https://twitter.com/#!/sbegaudeau</a></li>
          <li>Stephane Begaudeau (leader) Google+: <a href="https://plus.google.com/u/0/105625286543794908607">https://plus.google.com/u/0/105625286543794908607</a></li>
        </ul>
      </section>
      
      <section id="support">
        <div class="page-header">
          <h1>Support <small>need some help here!</small></h1>
        </div>
        <p>
          If you need some help with Acceleo, the developers of Acceleo are monitoring closely the following websites.
        </p>
        <ul>
          <li>Eclipse Newsgroup: <a href="http://www.eclipse.org/forums/index.php/f/24/">http://www.eclipse.org/forums/index.php/f/24/</a></li>
          <li>Stack Overflow: <a href="http://stackoverflow.com/questions/tagged/acceleo">http://stackoverflow.com/questions/tagged/acceleo</a></li>
        </ul>
        <p>
          This form of support may not meet daily needs of an enterprise adopter as far as response delays are involved. Most
          of the developpers of Acceleo are from Obeo, and are then the best source to provide competent and professional support.
        </p>
        <ul>
          <li>On demand support (based on hour)</li>
          <li>Long term support (integration and maintenance inside your eclipse bundle)</li>
          <li>Coaching</li>
          <li>Creation of your own generators</li>
        </ul>
        <p>
          For more information, visit the <a href="http://www.obeo.fr/pages/maintenance-and-support/en">Obeo website</a>.
        </p>
      </section>
      
      <section id="generators">
        <div class="page-header">
          <h1>Generators <small> real life examples of Acceleo code generators</small></h1>
        </div>
        <p>
          You can find Acceleo based generators on the <a href="http://marketplace.eclipse.org/">Eclipse Marketplace</a> and the
          <a href="http://marketplace.obeonetwork.com/">Obeo Marketplace</a>.
        </p>
        <p>
          Some generators are also available on github like an <a href="https://github.com/ObeoNetwork/UML-Java-Generation">UML to Java generator</a>
           created by the developers of Acceleo or an <a href="https://github.com/sbegaudeau/Ecore-Scala-Generation">Ecore to Scala generator</a>.
        </p>
        
        <br />
        <br />
      </section>
      
      <footer class="footer">
        <p>
          The material in these guides are Copyright (c) 2008, 2012 Obeo. This material is available under the Eclipse Public License v1.0
        </p>
      </footer>
    </div>
  </body>
</html>
