https://github.com/radiofrance/cellulr-engine
Way to build web pages with isolated and autonomous cells
https://github.com/radiofrance/cellulr-engine
component php
Last synced: over 1 year ago
JSON representation
Way to build web pages with isolated and autonomous cells
- Host: GitHub
- URL: https://github.com/radiofrance/cellulr-engine
- Owner: radiofrance
- License: other
- Created: 2017-09-12T09:42:07.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2018-05-23T08:32:56.000Z (about 8 years ago)
- Last Synced: 2025-03-24T18:11:20.831Z (over 1 year ago)
- Topics: component, php
- Language: PHP
- Homepage:
- Size: 59.6 KB
- Stars: 5
- Watchers: 10
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
CellulR Engine
============
CellulR is an engine to build websites. Each page is composed from isolated and independent cells.
This project is production ready, and is used on [www.franceculture.fr](https://www.franceculture.f) .
Each cell is isolated and autonomous. A cell is composed of (at least) one PHP Controller, JavaScript and CSS files.
How it works ?
-----
**1. Rendering**
Render a cell 'VideoPlayer' in current page, with Twig :
```twig
{{ cell('VideoPlayer', {arg1: 'a value'}) }}
```
Or using Varnish ESI (with standalone route):
```twig
{{ cell('VideoPlayer', {arg1: 'a value'}, {strategy: 'esi'}) }}
```
**2. The cell**
```php
$video
]);
}
}
```
**3. Manifest file**
The `component.json` declares dependencies (with other cells) :
```json
{
"name": "VideoPlayer",
"description": "Cell for video player",
"require": {
"Legend": "*",
"Image": "*"
}
}
```
**4. Assets (Javascript and Less)**
Less files and JavaScript files are automatically included thanks to the [cellulR-builder](https://github.com/radiofrance/CellulR-builder) component.
-----
Installation and documentation
-------------
[French only] [Documentation](./Resources/doc/README.md)
Do not hesitate to [help us](https://github.com/radiofrance/CellulR-engine/pulls) to translate documentation in english :)
Licence
-------
Project licensed under Cecill-B license. Please open the LICENSE file.