Sitetheory 1.0

Sitetheory is a robust and scalable framework to build beautiful and highly functional platforms. It is built to empower vendors, developers and design partners to rapidly create cool websites and powerful mobile apps. Sitetheory is the first vendor among many, with an admin website that functions as a website builder, CMS (Content Management System) and CRM (Customer Relationship Management). But other vendors can leverage the existing UI, API, Content Types, and Functionality to create their own identical (white labeled) or distinct platforms or just to make individual websites.


On the front end, all default Sitetheory themes use a proprietary Stratus Javascript framework to manage the UI/UX look, feel and functionality (custom themes can bypass everything if desired). Stratus has a few core features, and also loads other dependencies through Require.js. Via Require.js, Stratus loads some helpful javascript libraries used extensively throughout the site, including Underscore.js and Angular.js. Angular is used for model management (fetching and persisting data/entities from the API). Angular was chosen over React because it gives designers absolute and direct control over the look of everything from Twig template files (developers haven’t hard coded bad design in obscure javascript files designers can’t find). Empowering designers means faster and more beautiful design.

More details can be found at the Stratus Docs.


On the backend, Sitetheory utilizes Symfony as a modern framework, Doctrine for database and entity management, and Twig for HTML templating. As a CMS framework, Sitetheory just manages page requests on the server side. The current URL determines the correct Content (page) to load. Each Content is associated with a specific Content Type, e.g. Article, Profile, Landing Page Stream, etc. Sitetheory will load the correct Controller for the current Content Type, as well as the appropriate Twig Template. Individual Themes or websites can extend or overwrite the Controller or Templates to allow for endless customization.

More details can be found in the documentation below.


A new version will only be created at the moment when Backwards Compatibility is broken.


Other References