At SilverStripe Ltd., we are strong advocates of open source software, and we believe in the power of an open developer community. SilverStripe CMS adheres to a number of basic principles that we believe are vital to its success.
These principles include:
Commercial open source
Our decision to go open source in 2006 was based on the idea that the open source model simply produces better web software and, in turn, better meets our own needs and those of other developers who use the software.
As with all open source software, anyone has access to the source code, and a global community of developers can share best practices, code, documentation, roadmap ideas, and so on. You never have to pay a licensing fee for the software, and you never have to worry about vendor lock-in. Under the BSD license, which is one of the most flexible open source licenses and Open Source Initiative approved, you benefit from the contributions of others in the community, and the transparent way in which the software is developed in consultation with its users.
Separation of roles within the content management system
The most powerful tools for developers provide a rich API, with access to code that you can change directly. There is no graphical user interface to get in the way. For content authors, meanwhile, the most powerful creation tools let you edit content without thinking about code through a GUI.
Software that tries to use the same tools for both backend development and content editing will do neither particularly well: It will probably end up getting in the way of the developer while confusing the content author. We believe in using the right tool for the right purpose, and the separation of the SilverStripe Framework from CMS is key to making our software successful for different users.
Easy deployment and plugin architecture
SilverStripe CMS is designed from the ground up to be modular and extensible. Sophisticated customisations of core features can be separated into modules and installed to multiple sites without needing to change the core CMS.
The sites that you develop are also portable: The same code that runs on your development and test servers will get deployed to your production server, and environment-specific settings are kept cleanly separated.
Freedom of template design
If you can imagine it, you can build it with SilverStripe. The SilverStripe template language allows you to create any HTML and CSS you wish, and can even create other formats such as XML or JSON, for example, for Flash integration.
SilverStripe CMS is designed to promote accessible site design, semantic markup, and HTML5 use, and because of its template flexibility, we're confident that it will be able to accommodate whatever is coming next.
Tailor your CMS to your site
Why install features that aren't needed? The standard installation of SilverStripe CMS provides basic features, which may be all you need for a simple site. Through the use of modules and custom code, you can tailor it to meet the specific needs of your site and your users.
Test-driven development and continuous integration
Websites are becoming more compex and increasingly like software development projects. SilverStripe CMS comes with a powerful testing framework to allow for test-driven development, where developers build automated checks to ensure features of the CMS and their websites work as expected. This reduces friction of change.