Foswiki Association E.V
   HOME

TheInfoList



OR:

Foswiki is an enterprise wiki, typically used to run a collaboration platform, knowledge base or document management system. Users can create wiki applications using the Topic Markup Language (TML), and developers can extend its functionality with
plugins Plug-in, plug in or plugin may refer to: * Plug-in (computing) is a software component that adds a specific feature to an existing computer program. ** Audio plug-in, adds audio signal processing features ** Photoshop plugin, a piece of software t ...
. The Foswiki project was launched in October 2008 when a dispute about the future direction of TWiki could not be settled, resulting in the decision of nearly all key TWiki contributors to fork. Since then the codebases have diverged significantly. However, Foswiki continues to maintain compatibility with content written for TWiki. Foswiki stands for "free and open source" wiki to emphasize its commitment to open source software. The project is governed by the
Foswiki Association e.V Foswiki is an enterprise wiki, typically used to run a collaboration platform, knowledge base or document management system. Users can create wiki applications using the Topic Markup Language (TML), and developers can extend its functionality with ...
, a volunteer run, non-profit foundation. The Foswiki website is seen by some as one of the more popular Perl-related websites based upon Alexa rankings of all websites in the world.


Features

Foswiki features an open architecture programmed and implemented in the Perl and JavaScript languages and runs on standard web servers such as
Apache The Apache () are a group of culturally related Native American tribes in the Southwestern United States, which include the Chiricahua, Jicarilla, Lipan, Mescalero, MimbreƱo, Ndendahe (Bedonkohe or Mogollon and Nednhi or CarrizaleƱo an ...
, Nginx and lighttpd. With almost 70 contributors providing over 56,000 commits since its inception, the Foswiki team not only develops the code but also offers on-line support, including on IRC. Core features include a
TinyMCE TinyMCE is an online rich-text editor released as open-source software under the MIT License. It has the ability to convert HTML text area fields or other HTML elements to editor instances. TinyMCE is designed to easily integrate with JavaScri ...
WYSIWYG editor, built-in search engine, default text database, and skinnable user interface, as well as
RSS RSS ( RDF Site Summary or Really Simple Syndication) is a web feed that allows users and applications to access updates to websites in a standardized, computer-readable format. Subscribing to RSS feeds can allow a user to keep track of many di ...
/ Atom feeds, e-mail support, and database interfaces to support scalable database solutions such as MongoDB and MySQL. Additional security-related features include an auditable version control system, user authentication, an access control system, cross-site request forgery protection, and improved spam-prevention extensions.


Extensions

Users have contributed over 300 extensions. Most of these extensions have been developed by or for corporate users, and are maintained by developers and users, as documented in the individual extension histories. Extensions have been developed to link into databases, create
chart A chart (sometimes known as a graph) is a graphical representation for data visualization, in which "the data is represented by symbols, such as bars in a bar chart, lines in a line chart, or slices in a pie chart". A chart can represent tabu ...
s, tags, sort tables, write spreadsheets, create image gallery and slideshows, make
drawing Drawing is a form of visual art in which an artist uses instruments to mark paper or other two-dimensional surface. Drawing instruments include graphite pencils, pen and ink, various kinds of paints, inked brushes, colored pencils, crayons, ...
s, write blogs, plot
graphs Graph may refer to: Mathematics *Graph (discrete mathematics), a structure made of vertices and edges **Graph theory, the study of such graphs and their properties *Graph (topology), a topological space resembling a graph in the sense of discre ...
, interface to many different authentication schemes, including single sign-on, track Extreme Programming projects, and others.


Application platform

Foswiki is a structured wiki that acts as an
application platform A computing platform or digital platform is an environment in which a piece of software is executed. It may be the hardware or the operating system (OS), even a web browser and associated application programming interfaces, or other underlying so ...
for web-based applications. Specifically it provides database-like manipulation of fields stored on pages, and offers a SQL-like query language to support the embedding reports in wiki pages. Wiki applications are often called situational applications because they are created ad-hoc by users for very specific needs. For example, users have built Foswiki applications that include call center status boards, to-do lists,
inventory Inventory (American English) or stock (British English) refers to the goods and materials that a business holds for the ultimate goal of resale, production or utilisation. Inventory management is a discipline primarily about specifying the shap ...
systems,
employee handbook An employee handbook, sometimes also known as an employee manual, staff handbook, or company policy manual, is a book given to employees by an employer. The employee handbook can be used to bring together employment and job-related information wh ...
s, bug trackers, blog applications, discussion forums, status reports with rollups and more.


User interface

The user interface is customizable through use of templates, themes and
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
. It includes support for internationalization, with support for multiple character sets, UTF-8 URLs etc. The English user interface has been translated by users into Bulgarian, Chinese, Czech, Danish, Dutch, French, German, Greek, Italian, Japanese, Korean, Norwegian, Polish, Portuguese, Russian, Spanish, Swedish, Turkish and Klingon.


Deployment

Foswiki is expected to be used primarily at the workplace as a corporate wiki to coordinate team activities, track projects, implement workflows and as an
Intranet Wiki Wiki software (also known as a wiki engine or a wiki application), is collaborative software that runs a wiki, which allows the users to create and collaboratively edit pages or entries via a web browser. A wiki system is usually a web application ...
, for example in academia. Foswiki (among other components) was used in several research programs including
Data Integration Platform for Systems Biology Collaborations In the pursuit of knowledge, data (; ) is a collection of discrete values that convey information, describing quantity, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols that may be further interpreted. ...
, an interactive data integration platform supporting collaborative research projects, based on Foswiki, Solr/Lucene, and custom helper applications.


Implementation

Foswiki is implemented in Perl and JavaScript (using jQuery), though it can be used without JavaScript being enabled in the browser. By default, wiki pages are stored on the server in plain text files. Everything, including meta-data such as access control settings, are version controlled using
RCS RCS may refer to: Organisations *Racing Club de Strasbourg Alsace * Radio Corporation of Singapore *Radcliffe Choral Society * Rawmarsh Community School *Red Crescent Society *Red Cross Society * Representation of Czechs and Slovaks, a football t ...
. RCS is optional since an all-Perl version control system is provided. Other server-side databases, such as MongoDB, are supported through use of extensions. Informal user reports suggest that Foswiki scales reasonably well even though it uses plain text files and no
relational database A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
to store page data, especially where load balancing and caching are used to improve performance.


Support

Foswiki is an entirely community-driven project, and has no controlling commercial interest behind it. User support is provided by the community, via the mechanisms of IRC and the main website.


History

Foswiki started life as a fork of the TWiki project. Since the fork it has been worked on continuously by a relatively large development team. Notable developments since the fork include adoption of the jQuery JavaScript user interface framework, interfacing to the MongoDB NoSQL database, interfacing to the Solr search system, page caching and a modified editing interface.


See also

* Comparison of wiki software


References

{{Use mdy dates, date=September 2012 Free software programmed in Perl Free software programmed in JavaScript Free wiki software Enterprise wikis Free content management systems Groupware Cross-platform software