Project template for starting a project based on the Rabble admin system.

Related tags

CMS php cms symfony
Overview

Note: this is an experimental project and heavily under development.

If you do come across this repository, and you would like to support development, adding a would be awesome!

Rabble

Getting started

  • Install the project by running
composer create-project rabble/skeleton
  • Copy .env.dist to .env.local and set your environment variables.
  • Run the following command:
php bin/console rabble:admin:build dev
  • Access the admin panel by going to /admin
  • Have fun!

Note: You can add your own content types, content blocks, snippets and menus in the following directories using yaml, xml or php configuration:

  • config/packages/content_blocks
  • config/packages/content_types (there is an example content type present)
  • config/packages/snippets
  • config/packages/rabble_menu.yaml

More documentation on how to add fields and configure your content metadata will soon be available.


What is Rabble?

Rabble is an experimental agnostic administrator system with built-in features like user and permission management, searching and content management features.

At the moment, I am mainly focussing on the content management aspect, but once an MVP has been established, you can expect to see more features.

Features

At the moment, Rabble has a few features. In short, you can sum it up as user management, permission management, searching and some basic CMS features.

Of course, it is more than that. Using the Symfony framework, Rabble is designed to be fully customizable. For instance, you can add custom items to the main menu, system tray, implement your own search provider and even replace entire bundles by your own if you don't like what I've built so far!

Adminator admin theme

The admin UI is based upon the versatile Adminator theme with some custom additions to allow seamless integration with Rabble. Unfortunately, there is no React support at this moment. The UI is completely Twig / jQuery based. On one hand, that does make adding new scripts or changing existing ones a little bit easier.

So what about that CMS you keep talking about?

Sure, Rabble is in its basic form an agnostic admin system, but for me, a lot of focus goes towards making CMS accessible to people of the modern age. Most content management systems right now are either way too outdated or bulky (like for instance WordPress, Drupal or Joomla (does anyone even use that still?)). Or have a very steep learning curve for adding new stuff, for example Sulu.

My goal is to build a CMS that's easy to extend and just uses Symfony's basic features like forms and events.

Some of the features included already are:

  • Adding content type using Symfony configuration files
  • A PHPCR back-end storage system
  • Elasticsearch indexing (this is actually required to run the CMS)
  • Image uploading, cropping, scaling and filtering using Liip imagine
  • A router that allows you to link to a page using its UUID
  • A menu bundle for creating menus (built using the KnpMenuBundle)
  • Snippets
  • Content blocks (basically a collection of items with dynamic fields)
  • Translation support
  • And a lot more to come!

Please report bugs

Even though this project is still very young, I do appreciate bug reports, feedback, contributions and interactions of any kind!

You might also like...
A module allowing you to write your Processwire template using MJML and get a converted HTML output using MJML API.
A module allowing you to write your Processwire template using MJML and get a converted HTML output using MJML API.

PageMjmlToHtml A module allowing you to write your Processwire template using MJML and get a converted HTML output using MJML API. This is considered

A template package of package development for Concrete CMS Version 9.

A boilerplate to develop a package on Concrete CMS Version 9.

🦉 Administrative interface builder for Laravel (Laravel admin)
🦉 Administrative interface builder for Laravel (Laravel admin)

Laravel Admin Panel SleepingOwl SleepingOwl Admin is an administrative interface builder for Laravel. Completely free Support Laravel 5.5 - 5.8 (PHP

Twill is an open source CMS toolkit for Laravel that helps developers rapidly create a custom admin console that is intuitive, powerful and flexible. /// Chat with us and others on Spectrum: https://spectrum.chat/twill
Twill is an open source CMS toolkit for Laravel that helps developers rapidly create a custom admin console that is intuitive, powerful and flexible. /// Chat with us and others on Spectrum: https://spectrum.chat/twill

About Twill Twill is an open source Laravel package that helps developers rapidly create a custom CMS that is beautiful, powerful, and flexible. By st

🎨️ A WordPress plugin to disable admin color schemes

Colors A WordPress plugin to disable admin color schemes. Description Disable the admin color schemes for all users. Availiable filters colors_should_

sGallery Plugin for attaching Images and Video clips (YouTube) to a resource in the Evolution CMS admin panel.
sGallery Plugin for attaching Images and Video clips (YouTube) to a resource in the Evolution CMS admin panel.

sGallery for Evolution CMS 3 sGallery Plugin for attaching Images and Video clips (YouTube) to a resource in the Evolution CMS admin panel. Features U

This is a Hostel Management system project is created using PHP and MYSQL
This is a Hostel Management system project is created using PHP and MYSQL

Hostel-Managment-System-PHP This is a Hostel Management system project is created using PHP and MYSQL. Developed as a package for the subject Relation

A Joomla 4 system plugin to make editing content distraction free.

Clean Edit for Joomla 4 A system plugin to make editing content in the front end of your Joomla 4 website distraction free. Why? On a complex site or

Laravel Learn Manage System (LMS)

Basement LMS A criação da LMS vai dar ênfase em uma facilidade maior para que outros desenvolvedores Laravel entendam como é a modelagem de tudo. Essa

Comments
  • Memory Error

    Memory Error

    Hi Rachel,

    When i want to create a new Rabble project I get the error below. But my memory limit is set to unlimited. I have 128Gb of RAM available so I really don't think this is a issue with my computer. I watched the video on youtube regarding Rabble and can't wait to start working with it. Please help me Obi-Wan Kenobi...

    `Creating a "rabble/skeleton" project at "./rabbletest" Installing rabble/skeleton (0.3.2)

    • Installing rabble/skeleton (0.3.2): Extracting archive Created project in /Users/wouter/Documents/Symfony/rabbletest Loading composer repositories with package information Updating dependencies PHP Fatal error: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 268435464 bytes) in phar:///opt/homebrew/Cellar/composer/2.1.9/bin/composer/src/Composer/DependencyResolver/RuleSet.php on line 87

    Fatal error: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 268435464 bytes) in phar:///opt/homebrew/Cellar/composer/2.1.9/bin/composer/src/Composer/DependencyResolver/RuleSet.php on line 87

    Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.% `

    opened by whjvdijk 3
  • Console command rabble:admin:build dev throws ReflectionException

    Console command rabble:admin:build dev throws ReflectionException

    Running the following command in powershell: php .\bin\console rabble:admin:build dev -vvv gives the following stacktrace:

    
    In MappingPass.php line 65:
    
      [ReflectionException (-1)]
      Class "App\src\Kernel" does not exist
    
    
    Exception trace:
      at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\ongr\elasticsearch-bundle\DependencyInjection\Compiler\MappingPass.php:65
     ReflectionClass->__construct() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\ongr\elasticsearch-bundle\DependencyInjection\Compiler\MappingPass.php:65
     ONGR\ElasticsearchBundle\DependencyInjection\Compiler\MappingPass->handleDirectoryMapping() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\ongr\elasticsearch-bundle\DependencyInjection\Compiler\MappingPass.php:41
     ONGR\ElasticsearchBundle\DependencyInjection\Compiler\MappingPass->process() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\dependency-injection\Compiler\Compiler.php:91
     Symfony\Component\DependencyInjection\Compiler\Compiler->compile() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\dependency-injection\ContainerBuilder.php:749
     Symfony\Component\DependencyInjection\ContainerBuilder->compile() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\http-kernel\Kernel.php:545
     Symfony\Component\HttpKernel\Kernel->initializeContainer() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\http-kernel\Kernel.php:786
     Symfony\Component\HttpKernel\Kernel->preBoot() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\http-kernel\Kernel.php:125
     Symfony\Component\HttpKernel\Kernel->boot() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\framework-bundle\Console\Application.php:168
     Symfony\Bundle\FrameworkBundle\Console\Application->registerCommands() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\framework-bundle\Console\Application.php:74
     Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at C:\Users\abjor\code\symfony\rabble\skeleton\vendor\symfony\console\Application.php:167
     Symfony\Component\Console\Application->run() at C:\Users\abjor\code\symfony\rabble\skeleton\bin\console:45
    

    Got this exception with following system: Windows 10 PHP 7.4 and PHP 8.0 PostgreSQL 13

    What have I tried

    • tried running both PHP 7.4 and 8.0 and got the same exception.
    • tried running php bin/console cache:clear and php bin/console about and get the same exception.
    bug 
    opened by andersbjorkland 3
Owner
Rabble
Rabble is a new open source admin system that rocks at content management!
Rabble
Batteries include Drupal project template with Redis and object storage for assets.

Mojo An opinionated Drupal build designed to run in a cloud native environment. This is a work in progress, see the TODO.md for initial tracking of it

Bluehorn Digital 12 Apr 4, 2022
NukeViet 132 Nov 27, 2022
PHPDish is a powerful forum system written in PHP. It is based on the Symfony PHP Framework.

PHPDish 是一个基于Symfony框架开发的内容社区系统;得益于大量的前端以及后端的第三方类库的使用使得PHPDish有着高质量的代码,敏捷实现; 你可以使用composer或者直接下载本仓库进行程序的安装,注意切换到tag。 PHPDish 开发手册以及详细安装文档 Requirements

PHPDISH 227 Dec 8, 2022
The repository for Coaster CMS (coastercms.org), a full featured, Laravel based Content Management System

The repository for Coaster CMS (coastercms.org) a Laravel based Content Management System with advanced features and Physical Web integration. Table o

Coaster CMS 392 Dec 23, 2022
PHPDish is a powerful forum system written in PHP. It is based on the Symfony PHP Framework.

PHPDish 是一个基于Symfony框架开发的内容社区系统;得益于大量的前端以及后端的第三方类库的使用使得PHPDish有着高质量的代码,敏捷实现; 你可以使用composer或者直接下载本仓库进行程序的安装,注意切换到tag。

PHPDISH 227 Dec 8, 2022
Baicloud CMS is a lightweight content management system (CMS) based on PHP and MySQL and running on Linux, windows and other platforms

BaiCloud-cms About BaiCloud-cms is a powerful open source CMS that allows you to create professional websites and scalable web applications. Visit the

null 5 Aug 15, 2022
Coaster CMS a full featured, Laravel based Content Management System

The repository for Coaster CMS (coastercms.org) a Laravel based Content Management System with advanced features and Physical Web integration. Table o

Coaster CMS 392 Dec 23, 2022
An advanced yet user-friendly content management system, based on the full stack Symfony framework combined with a whole host of community bundles

An advanced yet user-friendly content management system, based on the full stack Symfony framework combined with a whole host of community bundles. It provides a full featured, multi-language CMS system with an innovative page and form assembling process, versioning, workflow, translation and media managers and much more.

Kunstmaan | Accenture Interactive 374 Dec 23, 2022
Create WordPress themes with beautiful OOP code and the Twig Template Engine

Timber helps you create fully-customized WordPress themes faster with more sustainable code. With Timber, you write your HTML using the Twig Template Engine separate from your PHP files.

Timber 5.2k Dec 31, 2022
Provides Twig template IDE autocomplete of Craft CMS & plugin variables

Autocomplete for Craft CMS 3.x Provides Twig template IDE autocompletion for Craft CMS and plugin/module variables and element types. Works with PhpSt

nystudio107 35 Dec 21, 2022