Getting Started with SilverStripe
Before you start developing your first web application, you'll need to install the latest version of SilverStripe onto a web server. The Getting Started section will show you what server requirements you will need to meet and how to download and install SilverStripe.
To check out the features that SilverStripe offers without installing it, read the Feature Overview and play with the interactive demo website.
Getting support
SilverStripe has an wide range of options for getting support:
- Join our forum
- Ask technical questions on Stack Overflow
- Get help on our Slack channel
- Read the technical reference in our API Documentation
- Get a user-focused overview of the CMS features in our User Help
- Discuss new features, API changes and the development roadmap on UserVoice
Building your first SilverStripe Web application
Once you have completed the Getting Started guide and have got SilverStripe installed and running, the following Tutorials will lead through the basics and core concepts of SilverStripe.
Make sure you know the basic concepts of PHP5 before attempting to follow the tutorials. If you have not programmed with PHP5 be sure to read the Introduction to PHP5 (zend.com).
SilverStripe Concepts
The Developer Guides contain more detailed documentation on certain SilverStripe topics, 'how to' examples and reference documentation.
-
Model and Databases
Learn how SilverStripe manages database tables, ways to query your database and how to publish data.
-
Templates and Views
This guide showcases the SilverStripe template engine and learn how to build your own themes.
-
Controllers
Controllers form the backbone of your SilverStripe application. They handle routing URLs to your templates.
-
Forms
Capture user information through Forms. This guide will work through how to create SilverStripe forms, adding and modifying fields and how to handle form submissions.
-
Configuration
SilverStripe provides several ways to store and modify your application settings. Learn about site wide settings and the YAML based configuration system.
-
Extending SilverStripe
Understand the ways to modify the built-in functionality through Extensions, Subclassing and Dependency Injection.
-
Testing
Deploy robust applications by bundling Unit and Behavior tests with your application code and modules.
-
Debugging
Learn how to identify errors in your application and best practice for logging application errors.
-
Performance
Make your applications faster by learning how to write more scalable code and ways to cache your important information.
-
Security
This guide covers user authentication, the permission system and how to secure your code against malicious behaviors
-
Email
Send HTML and plain text email from your SilverStripe application.
-
Integration and Web Services
Integrate other web services within your application or make your SilverStripe data available.
-
Search
Provide your users with advanced search functionality.
-
i18n
Display templates and PHP code in different languages based on the preferences of your website users.
-
Files
Upload, manage and manipulate files and images.
-
Customising the Admin Interface
Extend the admin view to provide custom behavior or new features for CMS and admin users.
-
Execution Pipeline
An overview of the steps involved in delivering a SilverStripe web page.
-
Command Line Interface
Automate SilverStripe, run Cron Jobs or sync with other platforms through the Command Line Interface.
-
Cookies and Sessions
Save state information using the Cookie class and the Session class.
Contributing to SilverStripe
The SilverStripe Framework, Content Management System and related websites are open source and welcome community contributions.
-
Bug Reports
Report bugs or problems with SilverStripe, feature requests or other issues.
-
Contributing Code
Fix bugs and add new features to help make SilverStripe better.
-
Build Tooling
-
Request for comment
-
Release Process
Describes the process followed for "core" releases.
-
Making a SilverStripe core release
Development guide for core contributors to build and publish a new release
-
Documentation
Writing guide for contributing to SilverStripe developer and CMS user help documentation.
-
Translations
Translate interface components like button labels into multiple languages.
-
Implement Internationalisation
Implement SilverStripe's internationalisation system in your own modules.
-
Core committers
-
Code of conduct
-
Coding Conventions
-
JavaScript Coding Conventions
-
CSS Coding Conventions
-
PHP Coding Conventions