= 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.5 and higher
* Apple Safari 2.0 and higher
* Opera 9.25 and higher

== Using Prototype

To use Prototype in your application, download the latest release from the 
Prototype web site (http://prototypejs.org/download) 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://svn.rubyonrails.org/rails/spinoffs/prototype/trunk/ prototype

Find out how to contribute:
  http://prototypejs.org/contribute

== Documentation

Please see the online Prototype API:
  http://prototypejs.org/api

