# SPIP

SPIP (Système de Publication pour l'Internet) is a free software content management system designed for web site publishing, oriented towards online collaborative editing.
The software is designed for easy setup, use and maintenance. The last P in the word SPIP stands for both Partagé (shared) and Participatif (participative), in the sense that the software is designed for collective online editing. Its mascot is a flying squirrel, in reference to the French-Belgian comics character Spip.
It is used by institutional sites, community portals, academic sites, associations, personal webpages, and news sites, an (incomplete) list of which being maintained on the project website's portfolio.
Beginning with version 4.2.5 (1 September 2023), Spip is moving to a monthly release schedule.

## Technology

The software is written in PHP, and relies on one or more SQL databases: MySQL / MariaDB, SQLite or PostgreSQL.
The pages of the site are generated 'on the fly': the contents stored in the database are formatted through presentation 'skeletons' that merge HTML and SPIP's own markup language. A caching system avoids the generation of pages at each request: when a page is requested, SPIP checks if it doesn't exist in its cache and if it isn't too old, it will be displayed. The life-span of a page is adjustable in its presentation skeleton.

## History

SPIP was originally conceived for the uzine.net site, after which its designers released it under GPL License. Since its launch 2001, it has also been used for Le Monde diplomatique newspaper and www.vacarme.eu.org; the webmaster of Le Monde diplomatique is one of the initiators of SPIP.
SPIP integrates a cache mechanism, an authentication system, an automatic setup module and an interface for administration and input of articles. SPIP can create dynamic pages without any PHP knowledge, using a web template system known as skeletons.
In early 2003, the 1.6 version made it possible to display the private back-end interface in several languages. A space for translators is set up in order to multiply the number of available versions.
In January 2004, the 1.7 version of SPIP enables the management of multilingual websites, and implements a search and content indexing module; It also enables syndication of other sites' contents.
In April 2005, the private interface of version 1.8 was reworked in order to take into account an analysis of ergonomic processes. An important modification for developers is SPIP's core that now benefits from a new compiler. It then becomes possible to elaborate skeletons with more complex functionalities without requiring any coding work in PHP.
Other re-workings are currently under way, such as the reworking of the private interface in the form of skeletons.
The 1.9 version (1) introduced a plug-in system and numerous changes, notably in the organisation of component files (particularly the transition from '.php3' to '.php' files extensions.
The 1.9.1 version introduced a template system, akin to Wikipedia.
The 1.9.2 version modified the directory structure to allow a better mutualisation of sources.
The 2.0 version supports multiple SQL databases, and introduces easy skeletons for web forms.
The 2.1 version builds on the concept of modules, along with improved security and stability, a new interface for plugins management, and other features.
The 3.0 major version was released on 19 May 2012:, completely redesigned towards a higher degree of modularity. All non-core functionalities are now implemented as plugins. The private area has been thoroughly rewritten in order to make the editorial objects as generic as possible. It's designed to be easier and quicker to create new editorial objects and to customize existing ones. The new DATA loop allows SPIP to connect to any kind of data (not only SQL tables). These data may be found locally (XML, CSV, YAML files, enumerations...) or directly on an URL (list of YouTube videos, Flickr photos, Google spreadsheets, online calendar...). So the web itself may be used as a database.
The 3.1 version was released on 6 January 2016. It provides updates of JavaScript libraries, default CSS styles, enhances the editorial space, provides new tools for writing skeletons, performance and writing code improvements.
The 3.2 version was released on 13 October 2017. It includes an update of embedded JavaScript libraries, better ergonomics of the private space as well as other improvements.
The 4.x version series, beginning with 4.0.0, has seen its first release in July 2021. It improves its internal document management engine, support for new picture formats such as SVG, a new administrator space; and on the technical side, compatibility with current PHP versions and new skeleton syntax.