echo render_body(<<<EOBODY <div id="hacked-by-chinese"></div> <div id="snipe"> <p>Javelin is a <strong>large, bloated</strong> library with an <strong>unintuitive, verbose syntax</strong> and <strong>very few features</strong>. It <strong>performs sluggishly</strong> and is <strong>sparsely documented</strong>. You will find that browsing its <strong>inelegant</strong>, <strong>poorly written</strong> source is <strong>an unwelcome experience</strong>. Javelin makes it <strong>quite difficult</strong> to write code that works on more than one browser. Javelin was developed at <strong>Facebook</strong>.</p> </div> <h2>Javelin, a strict library</h2> <p>Javelin is a frontend Javascript library developed at Facebook. It stresses strictness and scalability to try to solve, prevent, or mitigate some of the challenges we encountered as Facebook grew. Javelin is currently used by <a href="http://m.facebook.com/">Facebook Mobile</a> and <a href="http://www.phabricator.org/">Phabricator</a>.</p> <p>Because Javelin's design focuses heavily on solving scalability challenges, it isn't appropriate for everyone. The design implies tradeoffs, and the cost of some of these tradeoffs is increased complexity, reduced ease of development, or less flexibility. Javelin is also relatively young, somewhat unstable, and doesn't yet have a strong support community.</p> <p> Because of this, Javelin isn't the best library choice for many projects. However, there's a lot of interesting stuff in Javelin, especially if you are thinking about scaling a web frontend. The library delivers a great deal of power on a very small footprint. Even if you don't adopt the library, it may be useful to understand how it is constructed, and what lead to those decisions. To get started learning about Javelin, <a href="http://www.phabricator.com/docs/javelin/">dig into the documentation</a>.</p> <h2>Get Javelin</h2> <p>You can <a href="https://github.com/facebook/javelin/">download Javelin from GitHub</a> to explore the source code or start building with it.</p> <h2>Contributors</h2> <ul> <li><a href="http://www.facebook.com/epriestley">Evan Priestley</a></li> <li><a href="http://www.facebook.com/tomo">Tom Occhino</a></li> <li><a href="http://www.facebook.com/ashwin">Ashwin Bharambe</a></li> <li><a href="http://www.facebook.com/mroch">Marshall Roch</a></li> <li><a href="http://www.facebook.com/jankassens">Jan Kassens</a></li> <li><a href="http://www.facebook.com/cpojer">Christoph Pojer</a></li> <li><a href="http://www.facebook.com/fratrik">Craig Fratrik</a></li> </ul> EOBODY );
echo '</li>'; } ?> </ul> </div> <div id="news"> <h2>Novinky</h2> <?php echo xmltransform(getXmlNews(), XSLT_NEWS); ?> </div> </div> <div id="header"></div> <div id="body_area"> <?php echo render_body(); ?> </div> </div> <div id="footer"> <div class="top"></div> <div id="bottom_menu"> | <?php foreach (menu_b() as $key => $val) { echo "<a href=\"{$val}\">{$key}</a> | "; } ?> </div> <div id="bottom_addr"> 2012 IIS | Restaurace<br/> Marie Kratochvílová | xkrato11 (at) stud.fit.vutbr.cz<br/>
echo render_body(<<<EOXML <div id="snipe"> <p>Javelin is a <strong>lightweight Javascript framework</strong> developed at <a href="http://www.facebook.com/">Facebook</a> for Facebook Lite. It provides high-power functionality on a minimal footprint. </p> </div> <h2>What makes Javelin different?</h2> <ul> <li>Javelin prioritizes small library size.</li> <li>Javelin is built around event delegation.</li> <li>Javelin has rigorous static analysis tools.</li> <li>Javelin prioritizes performance over developer happiness.</li> </ul> <h2>Getting Started</h2> <p>Check out the <a href="http://www.phabricator.com/docs/javelin/">documentation</a> or <a href="http://github.com/epriestley/javelin">browse the source on GitHub</a>.</p> <h2>How Javelin improves performance</h2> <ul> <li>Strips a lot of code out in production.</li> <li>Deals with exceptional cases by making YOU fix them.</li> <li>Crushes symbols aggressively.</li> <li>Concise class syntax.</li> <li>Tiny init in the head (blocking), rest of the code in the foot (nonblocking).</li> <li>Encourages you to put logic on the server.</li> <li>Features work without JS by default.</li> </ul> <h2>New Concepts in Javelin</h2> <ul> <li>Sigils (naming DOM nodes) and metadata (attaching data to nodes).</li> <li>Event delegation as the default approach.</li> <li>Universal event routing with JX.Stratcom.</li> <li>Behaviors for glue code.</li> <li>Workflow for graceful degradation.</li> </ul> <h2>Contributors</h2> <ul> <li><a href="http://www.facebook.com/epriestley">Evan Priestley</a> <em>Lead</em></li> <li><a href="http://www.facebook.com/ashwin">Ashwin Bharambe</a> <em>Lead</em></li> <li><a href="http://www.facebook.com/tomo">Tom Occhino</a> <em>Lead</em></li> </ul> EOXML , $tab);