<h1>MapFish 1.2dev</h1>
<h2>About</h2>

<p><a href="http://www.mapfish.org">MapFish</a> is a complete and flexible
framework for building rich web-mapping applications.

It is based on the <a href="http://pylonshq.com/">Pylons</a> Python web
framework for the server side, and on the <a
href="http://www.openlayers.org">OpenLayers</a> and <a
href="http://www.geoext.org">GeoExt</a> JavaScript toolkits for the client
side.</p>

<h2 id="sample">Sample</h2>

<p>A minimal application built with MapFish is installed on the Live DVD. To
launch it, click on the MapFish link on the desktop. This will start the server
and open a FireFox tab pointing to the application (<a
href="http://localhost:5000">http://localhost:5000</a>).</p>

<p>The minimal application includes a map with two <a
href="http://www.openstreetmap.org/">OSM</a> layers, a toolbar above the map,
and a layer tree.</p> 

<p>This minimal application is what users of the MapFish framework get right
after the creation of their application with the framework. Read on to learn
more.</p>

<h2 id="create">Create a MapFish application</h2>

<p>The MapFish framework is installed on the Live DVD in the virtual Python
environment located in the <code>/usr/lib/mapfish/mapfish-venv</code>
directory. We will use this installation of the framework here.</p>

<p>A MapFish application is created in three commands (from a terminal):

<ul>
  <li> activate the virtual Python environment:
  <pre>
  $ source /usr/lib/mapfish/mapfish-venv/bin/activate
  </pre>
  </li>
  <li> create the application:
  <pre>
  $ paster create -t mapfish MyMapFishApp sqlalchemy=true
  </pre>
  </li>
  <li> install the JavaScript librairies in the application:
  <pre>
  $ paster create -t mapfish_client MyMapFishApp
  </pre>
  </li>
</ul>
</p>

<p>The above commands should have created the MapFish application in the
<code>MyMapFishApp</code> directory. <b>Note</b>: if the sample application
(from the previous <a href="#sample">section</a>) is running then port 5000 is already used, so
you'll have to edit the <code>MyMapFishApp/development.ini</code> file and
change the port number from 5000 to for example 5001.</p>

<p>At this point you should be able to run the application with:

<pre>
$ cd MyMapFishApp
$ paster serve development.ini
</pre>

<p>Open <a href="http://localhost:5000>">http://localhost:5000</a> (or <a
href="http://localhost:5001">http://localhost:5001</a>) in your browser. You
should see the same minimal application as that presented in the <a
href="#sample">Sample section</a>.</p>

<p>The MapFish framework offers more than that. In particular it allows easily
creating RESTful web services for creating, reading, updating and deleting
features. Please visit our <a href="http://www.mapfish.org">web site</a> to
learn more about MapFish.</p>

<h2>Install MapFish</h2>

<p>As indicated in the <a href="#create">previous section</a> the MapFish
framework is installed on the Live DVD in the  the virtual Python environment
located in the <code>/usr/lib/mapfish/mapfish-venv</code> directory. Yet, keep
reading if you want to know how to install MapFish in a fresh, clean virtual
environment.<p>

<p>Installing the MapFish framework is done with one command line:

<pre>
$ go-mapfish-framework-all.py --python=python2.5 venv
</pre>
</p>

<p>The above command creates the virtual Python environment in the
<code>venv</code> directory, fetches MapFish and its dependencies and install
them all in the virtual environment.</p>

<p>Ok, the framework is installed, you can go back to the <a
href="#create">Create a MapFish application</a> to create a MapFish application
using this installation.</p>