= Prototype
==== An object-oriented JavaScript framework
Prototype is a JavaScript framework that aims to ease development of dynamic
web applications. It offers a familiar class-style OO framework, extensive
Ajax support, higher-order programming constructs, and easy DOM manipulation.
=== Targeted platforms
Prototype currently targets the following platforms:
* Microsoft Internet Explorer for Windows, version 6.0 and higher
* Mozilla Firefox 1.0/Mozilla 1.7 and higher
* Apple Safari 1.2 and higher
== Using Prototype
To use Prototype in your application, download the latest release from the
Prototype web site (http://prototype.conio.net/) and copy
<tt>dist/prototype.js</tt> to a suitable location. Then include it in your HTML
like so:
<script type="text/javascript" src="/path/to/prototype.js"></script>
=== Building Prototype from source
<tt>prototype.js</tt> is a composite file generated from many source files in
the <tt>src/</tt> directory. To build Prototype, you'll need:
* a copy of the Prototype source tree, either from a distribution tarball or
from the Subversion repository (see below)
* Ruby 1.8.2 or higher (http://www.ruby-lang.org/)
* Rake -- Ruby Make (http://rake.rubyforge.org/)
* RDoc, if your Ruby distribution does not include it
From the root Prototype directory,
* <tt>rake dist</tt> will preprocess the Prototype source using ERB and
generate the composite <tt>dist/prototype.js</tt>.
* <tt>rake package</tt> will create a distribution tarball in the
<tt>pkg/</tt> directory.
== Contributing to Prototype
Check out the Prototype source with
$ svn co http://dev.rubyonrails.org/svn/rails/spinoffs/prototype/
Modify the files in <tt>src/</tt>, add tests in <tt>test/</tt> if possible,
and post a patch to http://dev.rubyonrails.org/newticket (please make sure
to pick "Prototype" as the component).
== Documentation
Please see the Prototype documentation on the script.aculo.us wiki:
http://wiki.script.aculo.us/scriptaculous/show/Prototype