php-lion / theme-sb-admin
PhpLion Theme - Start Bootstrap SB Admin - A Symfony bundle providing the Start Bootstrap SB Admin template as a ready-to-use admin dashboard
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Forks: 0
Type:symfony-bundle
pkg:composer/php-lion/theme-sb-admin
Requires
- php: >=8.3
- composer/semver: ^3.0
- php-lion/navigation: ^1.0
- symfony/deprecation-contracts: ^2.1|^3
- symfony/filesystem: ^7.1
- symfony/http-client: ^6.4|^7.0
- symfony/webapp-pack: ^1.3
Requires (Dev)
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^9.6
- symfony/asset: ^6.4|^7.0
- symfony/browser-kit: ^6.4|^7.0
- symfony/console: ^6.4|^7.0
- symfony/css-selector: ^6.4|^7.0
- symfony/event-dispatcher-contracts: ^3.0
- symfony/finder: ^6.4|^7.0
- symfony/framework-bundle: ^6.4|^7.0
- symfony/http-foundation: ^6.4|^7.0
- symfony/http-kernel: ^6.4|^7.0
- symfony/phpunit-bridge: ^6.4|^7.0
- symfony/web-link: ^6.4|^7.0
Conflicts
- symfony/framework-bundle: <6.4
This package is not auto-updated.
Last update: 2025-10-29 06:19:02 UTC
README
A Symfony bundle providing the Start Bootstrap SB Admin theme as a ready-to-use admin dashboard template.
Description
This bundle integrates the popular SB Admin template into Symfony applications, offering a clean and modern Bootstrap 5-based admin interface with responsive design, sidebar navigation, and comprehensive example pages.
Features
- Modern Admin Dashboard - Clean, professional Bootstrap 5 admin interface
- Responsive Design - Fully responsive layout for mobile, tablet, and desktop
- Sidebar Navigation - Collapsible sidebar with hierarchical menu structure
- Pre-built Pages - Ready-to-use pages for common admin scenarios
- FontAwesome Icons - Comprehensive icon set included
- Symfony Integration - Seamless integration with Symfony's Asset Mapper
- Navigation Attributes - Automatic menu generation using PHP attributes
Requirements
- PHP >= 8.3
- Symfony >= 6.4 or 7.0+
- Composer
Installation
composer require php-lion/theme-sb-admin
Configuration
1. Register the Bundle
The bundle should be automatically registered via Symfony Flex. If not, add it to config/bundles.php:
return [
// ...
PhpLion\Theme\SbAdminBundle\PhpLionSbAdminBundle::class => ['all' => true],
];
2. Compile Assets
php bin/console asset-map:compile
Demo Pages (Optional)
The bundle includes example pages to showcase the theme. To enable them, add the bundle routes to your config/routes.yaml:
phplion_theme_sb_admin:
resource: '@PhpLionSbAdminBundle/config/routes.yaml'
All demo pages will then be accessible under the /_phplion/theme/sb_admin prefix:
Core Pages
/- Dashboard (Main admin page with stats cards and tables)/charts- Charts page with Chart.js examples/tables- Data tables page with sample data
Layout Examples
/layout_static- Static navigation demo/layout_sidenav_light- Light sidebar theme demo
Authentication Pages
/login- Login page/register- Registration page/password- Password recovery page
Error Pages
/error_401- 401 Unauthorized page/error_404- 404 Not Found page/error_500- 500 Internal Server Error page
Usage
Using the Base Template
Extend the base template in your own Twig files:
{% extends '@PhpLionSbAdmin/base.html.twig' %}
{% block content %}
<h1 class="mt-4">My Admin Page</h1>
<div class="card mb-4">
<div class="card-body">
Your content here
</div>
</div>
{% endblock %}
Navigation System
The bundle uses PHP attributes for automatic navigation generation:
use PhpLion\NavigationBundle\Attribute\Navigation;
use PhpLion\NavigationBundle\Attribute\NavigationGroup;
#[NavigationGroup(name: '_phplion_theme_sb_admin')]
class MyAdminController extends AbstractController
{
#[Route('/my-page', name: 'my_admin_page')]
#[Navigation(path: 'My Section|My Page', priority: 1000)]
public function myPage(): Response
{
return $this->render('@PhpLionSbAdmin/page/custom.html.twig');
}
}
Template Blocks
Available blocks for customization:
title- Page titlestylesheets- Additional CSS filesbody_class- Body CSS classesnavbar- Top navigation barsidebar- Side navigationcontent- Main content areafooter- Footer sectionjavascripts- Additional JavaScript files
Asset Structure
assets/
├── css/
│ └── styles.css # Main theme stylesheet
├── js/
│ ├── scripts.js # Theme JavaScript (sidebar toggle, etc.)
│ └── datatables-simple-demo.js
├── fonts/ # Custom fonts
├── images/ # Theme images
└── vendor/ # Third-party assets
Template Structure
templates/
├── base.html.twig # Base layout with sidebar and navbar
└── page/
├── index.html.twig # Dashboard
├── charts.html.twig # Charts page
├── tables.html.twig # Tables page
├── login.html.twig # Login page
├── register.html.twig # Registration page
├── password.html.twig # Password recovery
├── 401.html.twig # 401 error
├── 404.html.twig # 404 error
├── 500.html.twig # 500 error
├── layout-static.html.twig
└── layout-sidenav-light.html.twig
Customization
Override Templates
Create your own templates in templates/bundles/PhpLionSbAdminBundle/:
templates/
└── bundles/
└── PhpLionSbAdminBundle/
└── base.html.twig # Your customized base template
Custom Styling
Add your own CSS after the theme's stylesheet:
{% block stylesheets %}
{{ parent() }}
<link href="{{ asset('css/my-custom-admin.css') }}" rel="stylesheet" />
{% endblock %}
Sidebar Customization
Override the sidebar block to customize the navigation:
{% extends '@PhpLionSbAdmin/base.html.twig' %}
{% block sidebar %}
{# Your custom sidebar #}
{% endblock %}
License
MIT License - see LICENSE file for details
Credits
- Original Template: Start Bootstrap - SB Admin
- Bootstrap 5: https://getbootstrap.com/
- FontAwesome: https://fontawesome.com/
Support
For issues and questions:
- Homepage: https://www.php-lion.de
- Email: info@php-lion.de
Original Template
This bundle is based on the SB Admin template by Start Bootstrap, licensed under the MIT License. The original template can be found at: https://startbootstrap.com/template/sb-admin