rwsite / moonshine-polaris-theme
Polaris visual theme for MoonShine Laravel admin panel
Package info
github.com/tikhomirov/moonshine-polaris-theme
Language:CSS
pkg:composer/rwsite/moonshine-polaris-theme
Requires
- php: ^8.2
- moonshine/moonshine: ^4.4
README
Theme package for Laravel admin panel MoonShine (MoonShine v4).
This is not a standalone admin panel. It is a visual theme layer for existing MoonShine projects.
What is implemented
Reusable MoonShine v4 theme package with:
- Polaris color palette (light + dark)
- Reusable base layout without project business menu
- Custom CSS overrides for cleaner admin UI
Compatibility
- PHP:
^8.2 - MoonShine:
^4.4 - Laravel:
10/11/12(via MoonShine requirements)
Why Polaris Theme
MoonShine has a great default look and official palette tooling in Palette Generator.
Polaris Theme goes further by combining color palette + layout + UI polish in one package:
- refined typography and spacing for dense admin screens,
- improved dark-mode contrast for forms and controls,
- cleaner sidebar behavior (active, hover, submenu readability),
- softer action/button states in tables,
- more consistent cards, badges, metrics, and scrollbars.
If you want a cleaner and more product-like back-office look without rewriting MoonShine UI manually, Polaris Theme gives you an opinionated ready-to-use setup.
Preview
Installation
composer require rwsite/moonshine-polaris-theme php artisan vendor:publish --tag=moonshine-polaris-theme-assets php artisan vendor:publish --tag=moonshine-polaris-theme-config
Usage
1) Set MoonShine layout and palette in config/moonshine.php
use Rwsite\MoonShinePolarisTheme\Layouts\PolarisThemeLayout; use Rwsite\MoonShinePolarisTheme\Palettes\PolarisPalette; return [ // ... 'layout' => PolarisThemeLayout::class, 'palette' => PolarisPalette::class, ];
2) If you need a custom menu, extend package layout
<?php declare(strict_types=1); namespace App\MoonShine\Layouts; use Rwsite\MoonShinePolarisTheme\Layouts\PolarisThemeLayout; final class AppMoonShineLayout extends PolarisThemeLayout { protected function menu(): array { return [ ...parent::menu(), // Your project menu here ]; } }
Then set:
'layout' => App\MoonShine\Layouts\AppMoonShineLayout::class,
Publish assets manually
php artisan vendor:publish --tag=moonshine-polaris-theme-assets --force
Release
git tag v1.0.1 git push origin v1.0.1
License
MIT

