Stralo is a modular CMS-like software suite consisting of over 30 modules. At the Republic, we use Stralo to create web content: websites, portals, collection management systems, media asset management systems, etc.
We've built Stralo from the ground up. It doesn't really rely on any particular web-framework. Instead, we decided to build it from scratch around open standards and a few central paradigms:
The core concept of Stralo is Linked Data. This means that all data is stored and published in a very structured way so that it can be interlinked and become more useful through semantic queries. This also means a Stralo server tries to interlink and understand the data it has in store. Much like a human tries to understand by linking many different memories together.
The semanticness of Stralo goes beyond it's technological implementation. It's a philosophy we imprinted into Stralo's DNA. For instance, next to eg. storing all information in a triplestore, we have built in native support for machine learning, grid computing, distributed storage, etc so it's able to reason about it's knowledge.
The ultimate goal of Stralo is to create a CMS that not only structures it's data according to international linked data standards, but truly understands what information it has in store.
We're a Belgian media company and specialize in developing software for the A/V sector. We have a very good, but tiny dev-team, which basically means we need to maximize our programming efforts as much as possible. For one, we find it hard to keep track of the fast-paced release cycles of a multitude of external frameworks and libraries. Once you have a shiny new release back-ported and tested, a new one pops up. This is why we decided to bite the bullet and write Stralo from scratch, only relying on stable, industry-proven - but sometimes not so hip - 3rd party libraries with slower release cycles.
Another future-proof-decision we took is to split Stralo up into a lot (30+) of small modules instead of developing it as one big framework. This offers us very fine-grained version control and drastically improves the time efficiency of our developers. See our GitHub page for all modules.
Holding on to the modular-thought, we also decided to split pages into little modules or "blocks". Each page consists of a number of standardized Web Components that make up both the content and the design. By marrying the modular version control with the modular blocks-concept, we are able to control the release cycle of the blocks that make up Stralo webpages.
Ever since we started working on Stralo, we wanted to keep things simple by avoiding a "back-end". This means editing content in Stralo should be as easy as in any word processor: you can click, type and drag-and-drop everything you see. And what you see is what your visitors see. This means that - contrary to other content management systems - you don't need to log in to a back-end admin section to alter your website by filling in a form. You just surf to the page you want to modify, click the edit button and start editing.
Next to editing the content of a page, we also wanted to be able to edit the look and layout of a page. Again, without the need of a back-end or a webdesigner. So we integrated a drag-and-drop layout and styling system that enables you to reorder and style any page, all within the bounds of a well-designed theme.