SilverStripe
Encyclopedia
SilverStripe is a free and open source
Free and open source software
Free and open-source software or free/libre/open-source software is software that is liberally licensed to grant users the right to use, study, change, and improve its design through the availability of its source code...

 content management system
Content management system
A content management system is a system providing a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer-based...

 (CMS) for creating and maintaining websites. It provides an out of the box web-based administration panel that enables users to make modifications to parts of the website, which includes a WYSIWYG
WYSIWYG
WYSIWYG is an acronym for What You See Is What You Get. The term is used in computing to describe a system in which content displayed onscreen during editing appears in a form closely corresponding to its appearance when printed or displayed as a finished product...

 website editor. The core of SilverStripe CMS is Sapphire, a PHP Web application framework
Web application framework
A web application framework is a software framework that is designed to support the development of dynamic websites, web applications and web services. The framework aims to alleviate the overhead associated with common activities performed in Web development...

.

SilverStripe is released under the terms of the BSD License. An online demonstration of the CMS is available as a video and as an interactive demo. Documentation is available for CMS users and website developers.

Software design and Sapphire

SilverStripe separates the roles of content authors (who get a rich (AJAX
Ajax
- Mythology :* Ajax , son of Telamon, ruler of Salamis and a hero in the Trojan War, also known as "Ajax the Great"* Ajax the Lesser, son of Oileus, ruler of Locris and the leader of the Locrian contingent during the Trojan War.- People :...

) web-based user interface that omits technical jargon) and website designers/developers (who write code: HTML, CSS, JavaScript, and PHP). This provides a contrast to CMS products that allow technical website development tasks to be performed within a GUI, and a contrast to programming frameworks that offer no out of the box content authoring application. The SilverStripe approach is stated to remove complexity for content authors, and offer more flexibility to developers.

The core of SilverStripe is named Sapphire. As with the rest of SilverStripe, it is written in PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

5, and takes advantage of PHP5's object-oriented design capabilities. Sapphire provides website developers a framework to build and extend websites based on modern programming techniques including the model-view-controller
Model-view-controller
Model–view–controller is a software architecture, currently considered an architectural pattern used in software engineering. The pattern isolates "domain logic" from the user interface , permitting independent development, testing and maintenance of each .Model View Controller...

 (MVC like, the model doesn't include the ability to notify the view of updates ) pattern and object-relational mapper.

SilverStripe generates markup
Markup language
A markup language is a modern system for annotating a text in a way that is syntactically distinguishable from that text. The idea and terminology evolved from the "marking up" of manuscripts, i.e. the revision instructions by editors, traditionally written with a blue pencil on authors' manuscripts...

 using a custom template language based on HTML that offers simple placeholders and conditional logic. SilverStripe is extensible through modules, widgets, themes, code customization, and ModelAdmin.

Features

Notable features of the SilverStripe CMS include:
  • An extensible web application interface
  • Drag-and-drop tree-based navigation structure
  • Custom output markup and table-free default styles (including HTML5 support)
  • Work-flow management: Draft/Published separation through content staging, document revision control/rollback with 'compare' functionality
  • Configurable security/permissions model (role-based)
  • Data object model, database generation through object-relational mapping
    Object-relational mapping
    Object-relational mapping in computer software is a programming technique for converting data between incompatible type systems in object-oriented programming languages. This creates, in effect, a "virtual object database" that can be used from within the programming language...

    , suite of customizable data input controls.
  • asset management
    Digital asset management
    Digital asset management consists of management tasks and decisions surrounding the ingestion, annotation, cataloguing, storage, retrieval and distribution of digital assets...

    , image resizing
    Image scaling
    In computer graphics, image scaling is the process of resizing a digital image. Scaling is a non-trivial process that involves a trade-off between efficiency, smoothness and sharpness. As the size of an image is increased, so the pixels which comprise the image become increasingly visible, making...

  • Multiple templates per page
  • Search engine friendly URLs, metadata
    Metadata
    The term metadata is an ambiguous term which is used for two fundamentally different concepts . Although the expression "data about data" is often used, it does not apply to both in the same way. Structural metadata, the design and specification of data structures, cannot be about data, because at...

     management, XML site map
    Site map
    A site map is a list of pages of a web site accessible to crawlers or users. It can be either a document in any form used as a planning tool for web design, or a web page that lists the pages on a web site, typically organized in hierarchical fashion...

     generation
  • Full text search
    Full text search
    In text retrieval, full text search refers to techniques for searching a single computer-stored document or a collection in a full text database...

     and RSS feeds
    RSS
    -Mathematics:* Root-sum-square, the square root of the sum of the squares of the elements of a data set* Residual sum of squares in statistics-Technology:* RSS , "Really Simple Syndication" or "Rich Site Summary", a family of web feed formats...

  • Optimizations for heavy loads (full and part-template caching)
  • Internationalization/Languages: SilverStripe supports multiple-language content. UTF-8
    UTF-8
    UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...

     and the internationalization
    Internationalization
    In economics, internationalization has been viewed as a process of increasing involvement of enterprises in international markets, although there is no agreed definition of internationalization or international entrepreneurship...

     of character sets are supported. The CMS is available in many languages, including English, French, German, Spanish, and Chinese.
  • Hierarchical URLs
  • Cross-platform: OS (Linux, Windows, Mac), Web server (Apache, IIS), Database (MySQL, PostgreSQL, Microsoft SQL Server fully supported; SQLite and Oracle Database have limited support.)


Notable features of upcoming releases of SilverStripe include:
  • Additional administration UI (e.g. web-interface based installation of modules, widgets)
  • Complete transition to jQuery
    JQuery
    jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig...

     library (currently uses jQuery with a mixture of older JavaScript frameworks.)
  • Site-wide widgets


Common CMS features not currently available in SilverStripe include:
  • In-place page editing
  • Web interface based installation of modules, widgets or themes
  • Web interface based customization of themes
  • Automated cache management/ORM refresh

Modules, widgets, and themes

Modules extend the core functionality of SilverStripe. Some existing modules include: Blog, Advanced Workflow Management, eCommerce, Forum, LDAP/OpenID authentication. Modules are available from the SilverStripe modules repository.

SilverStripe Widgets are small pieces of functionality that can be drag-and-drop
Drag-and-drop
In computer graphical user interfaces, drag-and-drop is the action of selecting a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object...

ped into SilverStripe modules (notably the blog module). Examples of widgets include: tag clouds, Flickr photos, or word of the day.

The SilverStripe themes directory provides a number of community-contributed, freely available themes.

Modules, widgets, and themes are all available as free downloads under the BSD license, and the majority of them are community contributed.

Software requirements

SilverStripe is a web application
Web application
A web application is an application that is accessed over a network such as the Internet or an intranet. The term may also mean a computer software application that is coded in a browser-supported language and reliant on a common web browser to render the application executable.Web applications are...

, requiring a compatible web server and SQL database. As of version 2.4.0 (5 March 2010), the requirements for SilverStripe are as follows :
  • Apache
    Apache HTTP Server
    The Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...

     v1.3.19+, Lighttpd
    Lighttpd
    lighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...

    , or Microsoft IIS
    Internet Information Services
    Internet Information Services – formerly called Internet Information Server – is a web server application and set of feature extension modules created by Microsoft for use with Microsoft Windows. It is the most used web server after Apache HTTP Server. IIS 7.5 supports HTTP, HTTPS,...

     7.x+ (A URL Rewriter is required. As of 2.4.0 IIS 7 URL rewriting is supported out of the box)
  • MySQL
    MySQL
    MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

     v5.0.X+, Microsoft SQL Server 2008+, PostgreSQL
    PostgreSQL
    PostgreSQL, often simply Postgres, is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, MS Windows and Mac OS X. It is released under the PostgreSQL License, which is an MIT-style license, and is thus free and open source software...

     8.3+, SQLite3 (community maintained) and Oracle Database (experimental)
  • PHP
    PHP
    PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

     5.2+ with MySQL
    MySQL
    MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

    , GD Graphics Library
    GD Graphics Library
    The GD Graphics Library is a graphics software library by Thomas Boutell and others for dynamically manipulating images. Its native programming language is ANSI C, but it has interfaces for many other programming languages. It can create GIFs, JPEGs, PNGs, and WBMPs...

     and zlib
    Zlib
    zlib is a software library used for data compression. zlib was written by Jean-Loup Gailly and Mark Adler and is an abstraction of the DEFLATE compression algorithm used in their gzip file compression program. Zlib is also a crucial component of many software platforms including Linux, Mac OS X,...

     support

Documentation

SilverStripe is released under the terms of the BSD License. Documentation is available for CMS users and website developers. An online demonstration of the CMS is available as a video and as an interactive demo.
A technical reference book on SilverStripe is available in both English and in German. Both are over 400 pages in length and were released in 2009.

History

The SilverStripe software is developed by SilverStripe Limited, a website development company founded in 2000.

Prior to SilverStripe 2.x, the CMS was commercially available under a proprietary license. Development of SilverStripe 2.X started in late 2005, as a complete overhaul to take advantage of object orientation
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...

 and new features in PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

5.

On 3 February 2007, SilverStripe 2.0.0 was released publicly as free and open source software
Free and open source software
Free and open-source software or free/libre/open-source software is software that is liberally licensed to grant users the right to use, study, change, and improve its design through the availability of its source code...

.

In March 2007, SilverStripe was selected for the Google Summer of Code
Google Summer of Code
The Google Summer of Code is an annual program, first held from May to August 2005, in which Google awards stipends to hundreds of students who successfully complete a requested free or open-source software coding project during the summer...

 program. This program resulted in the 2.2 release of SilverStripe.

On 29 November 2007, SilverStripe announced they would be participating in the Google Highly Open Participation Contest
Google Highly Open Participation Contest
The Google Highly Open Participation Contest was a contest run by Google during 2007-2008 aimed at high school students. The contest is designed to encourage high school students to participate in open source projects...

. This led to a proliferation of themes, translations and widgets that broadened the system.

In late 2008, SilverStripe split its main website into silverstripe.com, to act as the home for the company behind the software, and silverstripe.org, to act as the home for the software and its open source community..

In May 2009, the SilverStripe company formed partner associations with other website development companies to represent the company in foreign markets.

In February 2010, SilverStripe claimed the software had been downloaded 250,000 times since first released. Also in 2010, SilverStripe Ltd released complementary proprietary software, named Dawn, that monitors SilverStripe CMS websites and diagnoses problems.

In November 2010, Microsoft blogged that SilverStripe CMS became the world's first open source web application to attain its 'Certified for Windows' status.

Awards

  • Winner Packtpub Most Promising CMS Award 2008, $2000 prize.
  • Winner in New Zealand Open Source Awards for October 2008 and in 2010.
  • Most promising finalists in the 2007 Open Source CMS Awards
  • Finalists in the New Zealand Open Source Awards for October 2007

Reviews and articles


See also

  • Content management system
    Content management system
    A content management system is a system providing a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer-based...

  • List of content management systems

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK