blob: a894dab56516e24fd131532c33c80edfe3a41df4 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2002-2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "document-v12.dtd">
<document>
<header>
<title>Welcome to Forrest</title>
</header>
<body>
<section>
<title>Introduction</title>
<p>Forrest is an XML standards-oriented project documentation framework
based on Apache Cocoon, providing XSLT stylesheets and schemas, images
and other resources. Forrest uses these to render the XML source
content into a website via command-line, robot, or a dynamic web
application.
</p>
</section>
<section>
<title>User-friendly</title>
<p>
Forrest is designed with the new user in mind. Much effort has gone
into making the process of generating a new site <strong>easy</strong> and
<strong>simple</strong>:
</p>
<ul>
<li><strong>Step 1</strong>: Type <code>forrest seed</code>, to populate
the directory with template site structure and contents.</li>
<li><strong>Step 2</strong>: Add content by editing docs in
task-specific, presentation-neutral XML.</li>
<li><strong>Step 3</strong>: Type <code>forrest</code> to generate a
complete website from the XML. Various website styles (known as skins)
are available, and custom skins can be developed.</li>
</ul>
<note>For more information on Forrest installation and use, see the <link
href="site:your-project">Getting Started</link> guide.
</note>
<p>
Forrest's focus on low "startup cost" makes it ideal for rapid
development of small sites, where time and budget constraints do not
allow time-wasting HTML experiments. By <strong>separating content from
presentation</strong>, providing <strong>content templates</strong>
and <strong>pre-written skins</strong>, Forrest is unequalled at letting
content producers get their message out fast. This makes Forrest great
for <strong>project documentation</strong> (notably software projects),
<strong>intranets</strong> and <strong>home pages</strong>.
</p>
</section>
<section>
<title>Powerful</title>
<p>
Forrest is far from a quick &amp; dirty solution however. Forrest is
built on one of the world's leading XML publishing frameworks, <link
href="ext:cocoon">Apache Cocoon</link>, which provides advanced
users with extremely powerful publishing capabilities.
</p>
<ul>
<li>Multiple task-specific XML formats can be used (<link
href="site:howto-samples/overview">howtos</link>, <link
href="site:faq"><acronym title="Frequently Asked
Questions">FAQ</acronym>s</link>,
<link href="site:changes">changelogs</link> and <link
href="site:todo">todo lists</link> supported natively). This list
will soon expand to include Docbook and Wiki formats.</li>
<li>Multiple output formats supported, currently HTML and PDF (using
<link href="ext:fop">Apache FOP</link>).
</li>
<li>SVG to PNG rendering (using <link href="ext:batik">Apache
Batik</link>); simply drop a SVG in the appropriate directory and it
will be rendered as PNG.</li>
<li>
Transparent inclusion and aggregation of external content, like <link
href="site:changes-rss">RSS feeds</link>.
</li>
<li>
Anything else possible with the <link
href="ext:cocoon/sitemap">Cocoon sitemap</link>. Database
queries, <link href="ext:apache-stats">charting</link>, web services
integration; the possibilities are constantly growing as Cocoon grows.
</li>
<li>
Based on Java, Forrest is platform-independent, making for a
documentation system that is just as portable as the XML data it
processes.
</li>
</ul>
<section>
<title>Static or Dynamic</title>
<p>
Uniquely amongst comparable documentation tools, Forrest generates
sites that can run both <strong>interactively</strong> as a dynamic
web application, or as statically rendered pages.
</p>
<p>
This provides a path for site growth: start off small and static, and
if dynamic features (user login, forms processing, runtime data, site
search etc) are one day needed, these can be accommodated by switching
to webapp mode.
</p>
<p>
Running as a webapp has another advantage: content can be written, and
then the rendered output viewed almost instantly in a web browser.
This technique requires a bit <link
href="site:your-project/webapp">setting up</link>, but once working
it makes Forrest's edit/review cycle faster than command-line
transformation tools.
</p>
</section>
</section>
<section>
<title>History</title>
<p>Forrest was started in January 2002, with the intention being to
create a consistent <link
href="http://xml.apache.org/">xml.apache.org</link> website, with a
uniform, lightweight, easy-to-navigate layout and structure. In
addition, Forrest was to be a Sourceforge-like project management
tool, complementing <link href="ext:gump">Jakarta Gump</link> (hence
the name 'Forrest').
</p>
<p>
Over time, the grander goals were shelved, and focus shifted to
making Forrest a generic documentation tool, rather than something
specific to xml.apache.org.
</p>
<warning>This historical xml.apache.org focus can still be observed in a
number of this site's older pages. These are being gradually
updated.</warning>
</section>
<section>
<title>Project Status</title>
<p>Forrest is currently progressing rapidly through a series of 0.x
releases. Forrest is quite usable, and used in a number of <link
href="site:live-sites">live sites</link>, including <link
href="http://xml.apache.org/">xml.apache.org</link>.
</p>
<p>
In general, prior to 1.0, ensuring quality of design will be considered
more important than retaining backwards-compatibility. Users
(particularly those with custom sitemaps and skins) should be aware that
this is evolving software, and read the release notes carefully before
upgrading. That said, we appreciate the commitment in time that
adopters make, and will not make capricious or undocumented
backwards-incompatible changes.
</p>
<section>
<title>Website status</title>
<p>
The <link href="ext:forrest">Forrest website</link> is updated
irregularly and manually, while we develop the <link
href="site:forrestbot">forrestbot</link> facility which produces the
<link href="http://forrestbot.cocoondev.org/">automatically
generated</link> site.
</p>
</section>
</section>
<section>
<title>News and events</title>
<ul>
<li>Forrest 0.5 was released on 2003-09-13 - much faster, new flexible
tab and menu system, numerous skin improvements, DocBook support,
Wiki support, improved PDF output, eased maintenance of sitemaps,
and more.
</li>
</ul>
</section>
<section>
<title>Help Wanted!</title>
<p>
Forrest is fairly new, and is in need of developers. If you know (or
want to learn) XML, Ant, HTML or CSS, then you are qualified to help!
As with all Apache projects, Forrest is a meritocracy; the more you
put in, the more you get to define the project's future. See the
<link href="site:contrib">"contributing"</link> page for more
information.
</p>
</section>
</body>
</document>