SilverStripe
Encyclopedia
SilverStripe is a free and open source
content management system
(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
website editor. The core of SilverStripe CMS is Sapphire, a PHP Web application framework
.
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.
) 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
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
(MVC like, the model doesn't include the ability to notify the view of updates ) pattern and object-relational mapper.
SilverStripe generates markup
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.
Notable features of upcoming releases of SilverStripe include:
Common CMS features not currently available in SilverStripe include:
SilverStripe Widgets are small pieces of functionality that can be drag-and-drop
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.
, requiring a compatible web server and SQL database. As of version 2.4.0 (5 March 2010), the requirements for SilverStripe are as follows :
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.
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
and new features in PHP
5.
On 3 February 2007, SilverStripe 2.0.0 was released publicly as free and open source software
.
In March 2007, SilverStripe was selected for the Google Summer of Code
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
. 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.
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 (AJAXAjax
- 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 mappingObject-relational mappingObject-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 managementDigital asset managementDigital asset management consists of management tasks and decisions surrounding the ingestion, annotation, cataloguing, storage, retrieval and distribution of digital assets...
, image resizingImage scalingIn 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, metadataMetadataThe 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 mapSite mapA 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 searchFull text searchIn 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 feedsRSS-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-8UTF-8UTF-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 internationalizationInternationalizationIn 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 jQueryJQueryjQuery 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 applicationWeb 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 :
- ApacheApache HTTP ServerThe 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+, LighttpdLighttpdlighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...
, or Microsoft IISInternet Information ServicesInternet 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) - MySQLMySQLMySQL 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+, PostgreSQLPostgreSQLPostgreSQL, 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) - PHPPHPPHP 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 MySQLMySQLMySQL 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 LibraryGD Graphics LibraryThe 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 zlibZlibzlib 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
- SilverStripe Review (3 April 2009) SilverStripe - 2.3 series Review
- Microsoft Case Study (17 March 2009) SilverStripe--Windows interoperability creates new markets and fresh opportunities for open source company
- ReadWriteWeb, 14 September 2007, SilverStripe - Open Source CMS Has Support From Google
- Interview on New Zealand Television Show, 1 May 2007, (Video) Close Up, Democratic Technology
- Hiveminds Magazine, 15 March 2007, SilverStripe CMS is proof that open-source works
See also
- Content management systemContent management systemA 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
- SilverStripe open source project and community website
- Online demonstration website
- Official help documentation
- Community forums
- Developer documentation wiki
- Public bug tracker, feature requests, patches, roadmap, changelog/timeline
- SilverStripe corporate website
- SilverStripe CMS and Sapphire CMF API documentation