Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{html}
<style type="text/css">

#twtr-widget-1 .twtr-doc, #twtr-widget-1 .twtr-hd a, #twtr-widget-1 h3, #twtr-widget-1 h4, #twtr-widget-1 .twtr-popular {
    background-color: #569D2F !important;
    color: #FFFFFF !important;
}

#twtr-widget-1 .twtr-tweet a {
    color: #569D2F !important;
}

.big-col {
    margin-right: 310px !important;
}

#col {
   width : 250px;
}

#whatIs {
   overflow : auto;
}

DIV.left-column {
  float: left;
  width: 48%;
}

DIV.right-column {
  float: right;
  width: 48%;
}

.blogSurtitle {
    background: none repeat scroll 0 0 #569D2F;
    border: 2px solid #DDDDDD;
    color: #FFFFFF;
    margin: 1px 1px 10px;
    padding: 3px;
}
a.blogDate {
    color: #FFFFFF;
}

a.blogHeading {
    color: #569D2F;
    font-size: 14px;
}

.downloadBox{
   vertical-align : top;
}

#download p {
   font-size : 11px;

}
#download .box{
   vertical-align : top;
   display: inline-block; 
   width : 187px;
   height : 160px;
   padding : 15px;
   background : url("indexv2.data/cadre.png") no-repeat scroll left top transparent;
}

#download  a:link, #download a:visited, #download a:active, #download a:hover, #download a.add {
   font-size : 11px;
}

#col p {
    text-align : justify;
    font-size : 11px;
    line-height : 1.2 !important
}

#footer {
    margin-top: 150px;
}

.feature {
    #height: 150px;
}

</style>

{html}

{include:Banner}
{include:Key Features}
 
{div:id=bar}
*We think you will love Tapestry\!* Give us 20 minutes and *[follow our quickstart guide|Getting Started]*.
{div}

{div:id=col}

h3. [Latest news !Feed-icon.gif!|https://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&spaces=TAPESTRY&title=Apache+Tapestry+News+RSS+Feed&labelString%3D&sort=created&maxResults=10&timeSpan=12&confirm=Create&showContent=true&showDiff=false]

{blog-posts:max=3|sort=creation|reverse=true|content=excerpts}


{widget:url=http://search.twitter.com/search?q=tapestry5}

{div}

{div:id=content|class=big-col}

{include:downloadBoxes} 
\\
h2. What is Tapestry ?
\\

{html}
<style>

#whatIs ul {
    list-style: none outside none;
    margin: 0;
    padding: 0 10px 10px;
}
#whatIs li {
    float: left;
    margin: 0 10px 10px;
    width: 300px;
}

#whatIs li h3 {
    color: #569D2F;
    font-size: 16px;
    margin-left: 15px;
    margin-top: 0;
}

.tapProperty {
   width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#polyglot {
   background : url("indexv2.data/Chat.png") no-repeat scroll left top transparent; 
  width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#injection {
   background : url("indexv2.data/injection.png") no-repeat scroll left top transparent; 
   width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#productive {
   background : url("indexv2.data/Refresh.png") no-repeat scroll left top transparent; 
   width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#testable {
   background : url("indexv2.data/accepted.png") no-repeat scroll left top transparent; 
   width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#fast {
   background : url("indexv2.data/fast.png") no-repeat scroll left top transparent;
   width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px; 
}

#reporting {
   background : url("indexv2.data/bug.png") no-repeat scroll left top transparent; 
     width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#scalable {
   background : url("indexv2.data/Web.png") no-repeat scroll left top transparent; 
  width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

#modular {
   background : url("indexv2.data/plugin.png") no-repeat scroll left top transparent; 
  width : 32px;
   height : 32px;
   float : left;
   margin-right : 5px;
}

.whatIsWrapper{

}
</style>
<div id="whatIs">
<div class="whatIsWrapper">
   <ul type="square" class="alternate">
      <li>
           <div id="polyglot" class="tapProperty"></div> <h3>Pure Java and Polyglot </h3>
           <p>Written in pure Java: code your pages and components in Java, Groovy or Scala.</p>
      </li>
      <li>
           <div id="injection" class="tapProperty"></div> <h3>Convention Over Configuration</h3>
           <p>Say goodbye to endless XML configuration files: dependency injection and meta-programming through annotations.</p>
      </li>

      <li>
           <div id="productive" class="tapProperty"></div> <h3>Highly Productive</h3>
           <p>Live class reloading means that the time between seeing an error and providing the fix is seconds, not minutes.</p>
      </li>

      <li>
           <div id="scalable" class="tapProperty"></div><h3>Scalable</h3>
           <p>Scales up big on a single server, and works great in a cluster. Keeps session state minimal by design.</p>
      </li>
      <li>
           <div id="modular" class="tapProperty"></div><h3>Adaptable And Modular</h3>
           <p>Architecture is open and extensible. There's a clean way to add your own extensions, or override built-in logic. Provides  integration   with <a href="http://hibernate.org/">Hibernate</a> and <a href="http://www.springsource.org/">Spring</>. Third-party integrations with other tools, such as <a href="http://www.quartz-scheduler.org">Quartz</a> and <a href="http://lucene.apache.org/java/docs/index.html">Lucene</a>.</p>
      </li>
      <li>
           <div id="testable" class="tapProperty"></div> <h3>Testable</h3>
           <p>Committed to testability throughout design; built-in utilities to enhance TDD. Support for [Selenium|http://seleniumhq.org/] for integration testing. <a href="http://tapestry.apache.org/current/tapestry-core/cobertura/index.html">See Tapestry's code coverage report</a></p>
      </li>
<div class="clearer"></div>
      <li>
           <div id="fast" class="tapProperty"></div> <h3>Fast</h3>
           <p>Pure Java; no reflection, not even for property expressions. Built to cleanly support large numbers of concurrent threads without contention. Automatic GZip content compression, JavaScript aggregation, and client-side caching.</p>
      </li>
      <li>
           <div id="reporting" class="tapProperty"></div> <h3>Advanced Exception Reporting</h3>
           <p>Gives you all the tools you need to fix your problem: not just a  stack trace, but every bit of information you need to know about what Tapestry was doing, why it was doing it, what went wrong, and how to fix it.</p>
      </li>  
      
   </ul>
</div>
<div class="clearer"></div>
</div> <!-- end whatIs -->
{html}

[!twitterTapestry.png!|http://twitter.com/apachetapestry]

More on [Tapestry philosophy|TAPESTRY:Principles] - Who uses [Tapestry |TAPESTRY:Applications]?
[!twitterTapestry.png!|http://twitter.com/apachetapestry]
{div}

{HTMLcomment}Trigger page export{HTMLcomment}