%META:TOPICINFO{author="TWikiContributor" date="1111929255" format="1.0" version="32"}%
%TOC%
%STARTINCLUDE%
---# TWiki System Requirements

_Server and client requirements_

Low client and server requirements are core features that keep TWiki widely deployable, particularly across a range of browser platforms and versions.

---++ Server Requirements

TWiki is written in Perl 5, uses a number of shell commands, and requires [[http://www.gnu.org/software/rcs/rcs.html][RCS (Revision Control System)]], a GNU Free Software package. TWiki is developed in a basic Linux/Apache environment. It also works with Microsoft Windows, and should have no problem on any other platform that meets the requirements.

| *Resource* | *Required Server Environment *<nop>* |
| Perl | 5.005_03 or higher (5.8.4 or higher is recommended) |
| RCS | 5.7 or higher (including GNU =diff=) %BR% Optional, TWiki includes a pure perl implementation of RCS that can be used instead (though it's slower) |
| GNU =diff= | GNU =diff= 2.7 or higher is required when not using the all-Perl <nop>RcsLite.  %BR% Install on PATH if not included with RCS (check version with =diff -v=)  %BR% Must be the version used by RCS, to avoid problems with binary attachments - RCS may have hard-coded path to =diff= |
| Other external programs | =fgrep, egrep= |
| Cron/scheduler | %BULLET% Unix: =cron= %BB% Windows: =cron= equivalents |
| Web server | Apache is well supported; for other servers, see the TWiki:Codev.CategoryCookbook lists |

---+++ Required CPAN Modules
The following Perl modules are used by TWiki:
| *Module* | *Preferred version* |
| Algorithm::Diff | |
| CGI::Carp | >=1.26 |
| Config | >=0 |
| Cwd | >=3.05 | 
| Data::Dumper | >=2.121 |
| Error | |
| File::Copy | >=2.06 |
| File::Find | >=1.05 |
| File::Spec | >=3.05 |
| !FileHandle | >=2.01 |
| IO::File | >=1.10 |
| Text::Diff | |
| Time::Local | >=1.11 |

---+++ Optional CPAN Modules
The following Perl modules may be used by TWiki:
| *Module* | *Preferred version* | *Description* |
| CGI::Cookie | >=1.24 | Used for session support |
| CGI::Session | >=3.95 | Used for session support |
| Digest::base | | |
| Digest::SHA1 | | |
| Jcode | | Used for I18N support with perl 5.6 |
| Locale::Maketext::Lexicon | >=0 | Used for I18N support |
| Net::SMTP | >=2.29 | Used for sending mail |
| Unicode::Map | | Used for I18N support with perl 5.6 |
| Unicode::Map8 | | Used for I18N support with perl 5.6 |
| Unicode::MapUTF8 | | Used for I18N support with perl 5.6 |
| Unicode::String | | Used for I18N support with perl 5.6 |
| URI | | Used for configure |


Most of them will probably already be available in your installation.
You can check if they are available from the command-line like this
<verbatim>
perl -e 'use FileHandle; print $FileHandle::VERSION."\n"'
</verbatim>

#ClientRequirements
---++ Client Requirements

The TWiki [[TWikiInstallationGuide][standard installation]] has relatively low browser requirements:

	* HTML 3.2 compliant
	* Cookies, if persistent sessions are required

CSS and Javascript are used in most skins, though there is a low-fat skin (Classic skin) available that minimises these requirements. Some skins will require more recent releases of browsers. The default skin (Pattern) is tested on IE 6, and Mozilla 5.0 based browsers (such as Firefox).

You can easily select a balance of browser capability versus look and feel.

---++ Important note about TWiki Plugins

	* The TWikiPlugins feature currently does not have compatibility guidelines for developers. Plugins can require just about anything -  browser-specific functions, stylesheets (CSS), Java applets, cookies, specific Perl modules,... - check the individual Plugin specs.
		* __%T% Note:__ Plugins included in the TWiki distribution do not add requirements.

__Related Topics:__ AdminDocumentationCategory
