2017 © Pedro Peláez
 

symfony-bundle adminlte-bundle

Admin Theme based on the AdminLTE 2.3 for easy integration with Symfony 4

image

kevinpapst/adminlte-bundle

Admin Theme based on the AdminLTE 2.3 for easy integration with Symfony 4

  • Monday, July 23, 2018
  • by kevinpapst
  • Repository
  • 4 Watchers
  • 7 Stars
  • 550 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 10 Versions
  • 0 % Grown

The README.md


THIS BUNDLE IS NOT MAINTAINED ANYMORE

The used AdminLTE version is old. Both: supported Symfony and PHP version are EOL., (*1)

Issues, bug requests and even pull requests will not neither be answered nor merged., (*2)

If you are looking for a modern alternative, check out the Tabler bundle at: https://github.com/kevinpapst/TablerBundle, (*3)


Latest Stable Version Total Downloads License, (*4)

AdminLTE Bundle for Symfony

This repository contains an upgraded version of the AvanzuAdminThemeBundle, bringing the AdminLTE theme to Symfony 4., (*5)

Introduction

Minimum requirements

  • Symfony 4.3
  • PHP > 7.2
  • Twig 2.0

Compatibility:, (*6)

Version 3.x should be compatible with Symfony 5 and PHP 8, please leave your feedback., (*7)

  • Version 3.x is only compatible with Symfony >= 4.3
  • Version 2.x of this bundle is compatible with Symfony < 4.3

Features

Some of the main features of this theme bundle:, (*8)

  • Two main layouts for main application and security (login, forgot password, register account...)
  • Support for Symfony 4.x
  • Support for KNPMenuBundle
  • Support for FOSUserBundle
  • Webpack-Encore support for building assets
  • Event-driven handling of menu entries, tasks and notifications
  • Translations for: english, german, italian, czech, spanish, russian, arabic, finnish, japanese, swedish, portuguese (brazilian), dutch, french, turkish, danish, chinese, slovakian, basque, polish, esperanto, hebrew, romanian (please help translating it to more languages)
  • Based on AdminLTE 2.4.8
  • Using FontAwesome 5

Installation with Symfony Flex

Installation using Symfony flex:, (*9)

composer config extra.symfony.allow-contrib true
composer req "kevinpapst/adminlte-bundle:^3.0"

Installation with Composer

Installation using the "traditional" composer approach:, (*10)

   composer require kevinpapst/adminlte-bundle ^3.0

Afterwards copy the default config to your config/packages/ directory:, (*11)

cp vendor/kevinpapst/adminlte-bundle/config/packages/admin_lte.yaml config/packages/

Then, enable the bundle by adding it to the list of registered bundles in the config/bundles.php file of your project:, (*12)

<?php

return [
    // ...
    KevinPapst\AdminLTEBundle\AdminLTEBundle::class => ['all' => true],
];

Difference between AdminLTEBundle and AvanzuAdminThemeBundle

First and foremost: the original repository has a strong backward compatibility in mind, maintenance is only done if Symfony 2 and 3 compatibility is kept (e.g. here)., (*13)

That means you don't get the new shiny stuff for SF4. As I work on a Symfony 4 project, utilizing webpack-encore I needed a solution., (*14)

First I tried to sent PRs for the original repository, but those were not always accepted eg. here. As I really needed an upgraded version, I tried to manage a branch in a fork for a couple of weeks, but that wasn't working well and I found myself overwriting more and more stuff in my project until there was a point were I had to choose between: 1. doing all the changes in my project 2. doing the changes in my forked repository and having "dev-" entries in my composer.json 3. cleanup the fork, merge it with my project changes and release it for the community, (*15)

The choice 3 was easy and obvious for me: I am doing the work now in this repository with a fresh start and the chance for backward-compatibility breaks (for the users migrating from the AdminThemeBundle)., (*16)

Main differences

This repository was created from the original master, but with a lot of enhancements on top:, (*17)

  • Auto discovery for commands (see #215)
  • Symfony4 compatibility (see #215)
  • Dynamic config options (see #217)
  • Upgraded to AdminLTE 2.4.8
  • Added support for FOSUserBundle
  • Added Symfony Flex recipe for easier integration
  • Using Webpack-Encore for compiling frontend-assets
  • Fixed KNPMenu integration
  • Replaced AliasRouting with simpler version
  • Changed namespaces to allow co-existence with AdminThemeBundle for migration
  • Changed and extended default configuration
  • Huge cleanup of the codebase
  • Changed all twig block-names (with additional layout shim files for migration)
  • Changed control-sidebar, content is now configurable from admin_lte.yaml or the ContextHelper
  • A Demo application as living documentation for first time users and easier testing
  • Updated composer.json to reflect more up-to-date bundle dependencies
  • Introduction of unit tests, phpstan and code-style rules (all checked by Travis)

Migration from AvanzuAdminTheme

Be aware: I decided to change some project internals and got rid of some features from the original AdminThemeBundle. I found the all-in-one solution to be more problematic then helpful at several places, so I took the chance to update it to my own interpretation of a theme bundle., (*18)

If you previously used the AvanzuAdminTheme you will not be able to "just replace" the composer package. Plan ahead, you will need (depending on the size of your project) a couple of hours for the migration., (*19)

I migrated my own project within ~4 hours, but I had to move a lot of the customization to the bundle (e.g. the webpack-encore build) in the same time. See the PRs #202 and #206 for migration examples., (*20)

License and contributors

Published under the MIT, read the LICENSE file for more information., (*21)

This repository is based on the work of AdminThemeBundle, please check their contributor list as well and give them a star!, (*22)

The Versions