Skip to end of metadata
Go to start of metadata

Prerequisites

Local Installation

You make your developer life much more easier, if you install all that locally and not on a remote server.
There are complete packages like XAMPP, which make the basic instalation quite easy.

Operating System

We usually develop on Linux and Mac OS X and those systems are very well tested. But some people are also using Okapi on Windows.

PHP 5.x

We recommend the latest and greatest PHP, which currently is PHP 5.3.x.
Okapi has been tested and works well on 5.2.x. It may work with 5.1.x or even 5.0.x, but we do not test on those systems.
PHP 4 is completely not supported and won't even start on that.

Needed Extensions

Following Extensions are recommended (and enabled by default in a standard PHP installation):

  • libxml
  • xml
  • SimpleXML
  • dom
  • iconv
  • SPL
  • json
  • Reflection
  • pcre
  • date
  • session

(they are not all really needed for the core Okapi, but are usually expected to be installed)

Depending on what you develop, which templating system and DB you use, the following may also be needed. This tutorial needs them.

  • xsl
  • PDO
  • PDO_mysql

Further useful extensions

  • gd2
Latest libxml2

We recommend to use recent libxml2 and libxslt libraries, as they often consist of important bugfixes and improvements

Apache

We recommend using Apache 2.2/2.0, but 1.3 should still work.

mod_rewrite is essential for making Okapi work.

We usually install PHP as module (mod_php), but fastcgi should also work.

Database

Depending on your application you want to write, you may need a Database. For this tutorial I used MySQL 5.0.x.

Decent Webbrowser

Last but not least, you need a webbrowser. For Okapi itself, there are no special requirements, but as we usually use YUI or similar libraries, we recommend using an A-Grade browser from the YUI Browser Support Chart

Subversion Client

For a serious developement setup (and to follow this tutorial), you also need a subversion client. You can use a GUI based one, but to better learn what's going on, we recommend using the command line for this tutorial.