Chapter 1. Introduction

Table of Contents
What is PEAR?
The PEAR Manifest

PEAR is dedicated to Malin Bakken, born 1999-11-21.

What is PEAR?

PEAR is short for "PHP Extension and Application Repository" and is pronounced just like the fruit. The purpose of PEAR is to provide:

PEAR is a community-driven project with the PEAR Group as the governing body. The project has been founded by Stig S. Bakken in 1999 and quite a lot of people have joined the project since then.

Structured Library of PHP Code

The code in PEAR is partitioned in "packages". Each package is a separate project with its own development team, version number, release cycle, documentation and a defined relation to other packages (including dependencies). Packages are distributed as gzipped tar files with a description file inside, and installed on your local system using the PEAR installer.

There are two types of packages: source packages (containing source files only), and binary packages (containing platform-specific binary files, and possible source files). Installing source packages with C code obviously requires a C build environment.

PEAR defines a package tree, where each "node" in the tree is represented by a part of the package name. The nodes are organized by simple descriptive topics, and each part is separated by an underscore. Examples of package names are "MP3_Id", "Archive_Tar" and "HTTP_Post".

Packages may relate to eachother through explicit dependencies, but there is no automatic relation between for example a package and its "parent" in the package tree (for example, "HTTP_Post" is by default independent of "HTTP").

A few top-level nodes in the package tree called "sub-repositories" have special functions, currently these are PECL, Gtk and App. For each of these, different rules apply, see more in the description of each sub-repository below.

A style guide, the PEAR Coding Standards (short PCS), exists to ease collaboration between PEAR developers, to help quality and portability, and to help PEAR contributors to provide consistent-looking-and-feeling APIs. For packages in the PFC, this standard applies strictly, for non-PFC packages it applies more relaxed.

Gtk Packages

Gtk

Gtk packages are packages that provide software which uses the technology of the PHP-GTK project. Code in this sub-repository follows PEAR's coding standards.

Right now there is no definitive plan on how they will be released in PEAR.