<h2>Welcome to YUIDoc {{version}}!</h2>

<div class="intro">
    <p>YUIDoc is a <a href="http://nodejs.org/">Node.js</a> application that
    generates API documentation from comments in source, using a syntax similar 
    to tools like Javadoc and Doxygen. YUIDoc provides:</p>

    <ul>
        <li><b>Live previews.</b> YUIDoc includes a 
        <a href="args/index.html#server">standalone doc server</a>, 
        making it trivial to preview your docs as you write.</li>
        <li><b>Modern markup.</b> YUIDoc's generated documentation is an
        <a href="http://yuilibrary.com/yui/docs/api/classes/Model.html">attractive, 
        functional web application</a> with real URLs and graceful 
        fallbacks for spiders and other agents that can't run JavaScript.</li> 
        <li><b>Wide language support.</b> YUIDoc was originally designed for 
        the <a href="http://yuilibrary.com">YUI project</a>, but it is not
        tied to any particular library or programming language. 
        You can use it with any language that supports
        `/* */` comment blocks.</li>
    </ul>
</p>
</div>

<h2 id="#install">Installation and Usage</h2>

<ol>
    <li>Download and install <a href="http://nodejs.org/#download">Node.js</a></li>
    <li>Run `npm -g install yuidocjs`.</li>
    <li>Run `yuidoc .` at the top of your JS source tree.</li>
</ol>

<p>That's it! For more information about running the `yuidoc` commandline tool,
refer to "<a href="args/index.html">Using YUIDoc</a>".</p>

<h2>User Guides</h2>

<ul>
  {{#components}}
    {{#meta}}
    <li><a href="{{name}}/index.html">{{displayName}}</a> &mdash; {{description}}</li>
    {{/meta}}
  {{/components}}
</ul>

<h2>Example YUIDoc Comment Blocks</h2>

<p>YUIDoc parses a modified form of JSDoc tags. 
This section provides a taste of some of the more common constructs in YUIDoc.
For more information, refer to the "<a href="./syntax/index.html">YUIDoc Syntax Reference</a>".</p>

<h3>Example Class Block</h3>
```
/**
* This is the description for my class.
*
* @class MyClass
* @constructor
*/
```
<h3>Example Method Block</h3>
```
/**
* My method description.  Like other pieces of your comment blocks, 
* this can span multiple lines.
*
* @method methodName
* @param {String} foo Argument 1
* @param {Object} config A config object
* @param {String} config.name The name on the config object
* @param {Function} config.callback A callback function on the config object
* @param {Boolean} [extra=false] Do extra, optional work
* @return {Boolean} Returns true on success
*/
```

<h3>Example Property Block</h3>
```
/**
* My property description.  Like other pieces of your comment blocks, 
* this can span multiple lines.
* 
* @property propertyName
* @type {Object}
* @default "foo"
*/
```
