devgeek/beacon-admin

Dashboard Admin panel for Symfony

Maintainers

Package info

github.com/FlorianPaumier/beacon-project

Homepage

Type:symfony-bundle

pkg:composer/devgeek/beacon-admin

Statistics

Installs: 6

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.3.0 2026-06-05 14:22 UTC

README

Latest Version Stable

A lightweight, modern admin dashboard bundle for Symfony applications.

Features

  • Dashboard with configurable widget grid
  • CRUD resource management with Doctrine ORM integration
  • Auto-generated forms from entity metadata
  • Server-side datatables with search, sort, and pagination
  • Configurable sidebar navigation
  • Dark/light theme support
  • Authentication integration (Symfony Security)
  • Responsive layout (mobile + desktop)
  • Flash notifications

Installation

composer require devgeek/beacon-admin

Quick Start

  1. Add configuration in config/packages/beacon_admin.yaml:
beacon_admin:
    route_prefix: /admin
    title: 'My Admin'
    menu:
        - { label: Dashboard, route: beacon_admin_dashboard, icon: home }
  1. Import routes in config/routes/beacon_admin.yaml:
beacon_admin:
    resource: '@BeaconAdminBundle/config/routes/beacon_admin.yaml'
  1. Create a CRUD controller:
<?php

declare(strict_types=1);

namespace App\Controller\Admin;

use App\Entity\Product;
use Devgeek\BeaconAdmin\Controller\AbstractCrudController;
use Devgeek\BeaconAdmin\Crud\CrudConfig;

final class ProductCrudController extends AbstractCrudController
{
    protected function getEntityClass(): string
    {
        return Product::class;
    }

    protected function configureCrud(CrudConfig $config): void
    {
        $config
            ->fields(['name', 'price', 'category', 'createdAt'])
            ->sortableFields(['name', 'price', 'createdAt'])
            ->searchableFields(['name'])
            ->pageSize(25);
    }
}

Documentation

See the docs/ directory:

Requirements

  • PHP 8.4+
  • Symfony 7.4 / 8.0
  • Doctrine ORM

License

MIT