
  <div id="primaryLinks">
    <h3>Primary Links</h3>

    <ul>
      <li><a id="buttonDownload" href=
      "http://www.eclipse.org/downloads/packages/" title="Download"
      name="buttonDownload"><strong>Download</strong> Eclipse
      Distribution</a></li>

      <li><a id="buttonDocumentation" href=
      "http://wiki.eclipse.org/ModelingAmalgam" title=
      "Documentation" name=
      "buttonDocumentation"><strong>Documentation</strong>
      Tutorials, Examples, Videos, Reference Documentation</a></li>

      <li><a id="buttonSupport" href="support" title="Support"
      name="buttonSupport"><strong>Support</strong> Bug Tracker,
      Newsgroup, Support</a></li>

      <li><a id="buttonInvolved" href="developers" title=
      "Getting Involved" name="buttonInvolved"><strong>Getting
      Involved</strong> CVS, Workspace Setup, Wiki,
      Committers</a></li>
    </ul>
  </div>

  <div id="midcolumn">
    <h3>Modeling Amalgamation Project</h3>

    <div id="introText">
      <p class="left">The Amalgamation project provides improved
      packaging, integration, and usability of Modeling project
      components. The project is focused on providing a consumable
      and integrated Eclipse Modeling Tools package and ease the
      discovery of the modeling technologies through specific code
      and examples.</p>

      <p class="right">In a nutshell this project provides : a
      consumable and consistent <b>Modeling Platform</b>,
      complementary integration code to enhance the <b>user
      experience</b> , easy <b>one click discover and install</b>
      wizard to extend the package and <b>examples</b> leveraging
      modeling technologies.</p>
    </div>

    <div id="screencast">
      <a href="/modeling/amalgam/images/package.png"><img src=
      "images/small_package.png" alt="Modeling Package"></a>
    </div>
<div id="feature">
<h4></h4>
<p>
        
</p>
</div>

<div id="feature_discovery">
<h4></h4>
<p>
</p>    
</div>

  </div>

  <div id="rightcolumn">
   <div class="sideitem">
   </div><br/>
   
    <div class="sideitem" id="obeo">
    <p>
    <i>Obeo provides support for Eclipe Modeling Projects.</i>
    </p>
      <a href="http://www.obeo.fr" title="Main Obeo website" rel=
      "nofollow"><img src="images/logo/logo_obeo.png"></a>
    </div>
 
    <div class="sideitem">
      <h6>News</h6>

      <ul>
        <li><tt>03/2010</tt> a new media to <a href=
        "http://cedric.brun.io/eclipse-amalgamation-20/">
        discover and install modeling components</a></li>

        <li><tt>10/2009</tt> a new team is forged</li>
      </ul>
    </div><br>

    <div class="sideitem">
      <h6>Eclipse Modeling Project Book</h6>

      <p align="center">The Amalgam project used to be a support for
      the <b>Eclipse Modeling Project</b> book explaining how to
      leverage several modeling technologies. The book examples are
      based on the Ganymede release and have not been updated since then you should download the
      <a href=
      "downloads/oldpackages.php">
      corresponding packages.</a> <a href=
      "http://www.informit.com/store/product.aspx?isbn=0321580540"><img src="http://www.informit.com/ShowCover.aspx?isbn=0321580540&amp;type=f"></a></p>
    </div>
    
    <div class="sideitem"> 
		<h6>Project Summary</h6> 
		<div class="modal"> 
			<p> 
				Read more <a href="http://www.eclipse.org/projects/project_summary.php?projectid=modeling.amalgam">about
				this project</a> and get all useful information and links about it in a nutshell.
			</p> 
		</div> 
	</div> 
	
    
   
  </div>
