Backdrop CMS enables people to build highly customized websites affordably, through collaboration and open source software.
Backdrop CMS is for the small to medium sized business, non-profits, educational institutions, and companies or organizations who are delivering comprehensive websites on a budget.
Backdrop values site builders over coders.
It's most important that the product first be usable, and second, easy to extend. Developers should consider their users first, and choose to build intuitive user interfaces over flexibility. If options must be presented in the user interface they should be minimal, but APIs beneath the surface can expose more options to developers.
Backdrop values contrib developers over core developers.
Core developers should fight the urge to refactor, because small changes in core may result in large changes for contrib. Each major change will be weighed carefully against the principles of the project, and if a decision is not immediately clear, and issue should be escalated to the Project Management Committee.
- Backwards compatibility is important. Backdrop will attempt to keep API change to a minimum in order for contributed code to be maintained easily, and for existing sites to be updated affordably. Every big change that can't be made backwards compatible will need to be carefully considered, and measured against Backdrop's other principals:
- Write code for the majority. Backdrop will aim to be easy to learn and build upon, even for those with a minimal amount of technical knowledge. Direct implementations will be chosen over abstraction, and how things work should be immediately clear and easily documentable. While the more vocal parts of our community may be more experienced developers, we always need to keep in mind the developers who are newer to the project.
- Include features for the majority. Backdrop core should only include features and tools that benefit the majority of sites that are running it. When making decisions on how to move forward with future versions of Backdrop, we will include opinions of those who are not so vocal online. This means including opinions from individuals who attend trainings, meet-ups, and camps as well as real-world engagements with consumers of Backdrop.
- Ensure Backdrop can be extended. Backdrop aims to provide a powerful core that can be readily extended through custom or publicly available contributed modules. These additional modules can provide desired features that are not implemented in core due to their complexity or use cases that are too specific.
- Meet Low System Requirements. Backdrop must be able to run on affordable hosting with very basic requirements. Achieving this goal will mean not chasing popular trends in technology, but instead adopting common, proven, and learnable systems.
- Plan and schedule releases. Each release will contain a planned set of features, and will be released on time. If a feature is not ready in time for a specific release, the feature will get postponed, and the release will still be delivered on time.
- Remain Free and Open Source. Open Source has the ability to change the world for the better. All code included with Backdrop is under an Open Source license that allows anyone to use it free of charge, regardless of their beliefs or intentions. All code included with Backdrop has always been, and always will be, Free and Open Source.