northwestern-sysdev/northwestern-filament-theme
composer require northwestern-sysdev/northwestern-filament-theme
PanelProvider:
use Northwestern\FilamentTheme\NorthwesternTheme;
public function panel(Panel $panel): Panel {
return $panel
->plugins([
NorthwesternTheme::make(),
]);
}
php artisan filament:assets
Apply the Northwestern theme to your Filament admin panel immediately. The package automatically:
Basic Integration:
NorthwesternTheme::make()
->footer() // Enable footer for public-facing panels
->withoutEnvironmentIndicator(); // Disable for production-like staging
Vite Theme Integration (for Tailwind users):
php artisan northwestern-theme:install
Then configure in PanelProvider:
NorthwesternTheme::make()
->withoutAssetRegistration();
Now use NU colors in your CSS:
.button { background: theme('colors.nu-gold.500'); }
Conditional Features:
NorthwesternTheme::make()
->footer(enabled: fn () => auth()->check())
->impersonationBanner(visible: fn () => session()->has('impersonating'));
php artisan vendor:publish --tag=northwestern-filament-theme-views) to customize:
bg-nu-purple-100, text-nu-gold, etc. (requires Vite integration).// Admin panel (no footer)
NorthwesternTheme::make()->withoutFooter();
// Public panel (with footer)
NorthwesternTheme::make()->footer();
northwestern-laravel-ui: The theme auto-detects config from the UI package (e.g., office.* for footers).viteTheme() remains intact.Double-Loading Assets:
filament:assets and Vite integration are enabled.withoutAssetRegistration() when using Vite:
NorthwesternTheme::make()->withoutAssetRegistration();
<link> tags.CDN Dependencies:
common.northwestern.edu. Blocked CSP or restricted networks will break them.<meta http-equiv="Content-Security-Policy" content="... img-src https://common.northwestern.edu ...">
Footer Overrides:
northwestern-laravel-ui isn’t installed.NorthwesternTheme::make()->footer(
officeName: 'Custom Office',
officeAddr: '123 Main St'
);
Impersonation Banner Conflicts:
lab404/laravel-impersonate + this package.NorthwesternTheme::make()->withoutImpersonationBanner();
php artisan view:clear
!important sparingly—NU’s theme uses utility classes (e.g., .nu-purple-bg). Override with:
.my-class { --nu-purple-100: #yourcolor !important; }
tinker:
php artisan tinker
>>> NorthwesternTheme::make()->environmentIndicator()->visible()
theme() function in tailwind.config.js:
theme: {
extend: {
colors: {
'nu-custom': '#yourhex',
}
}
}
NorthwesternTheme::make()
->footer(enabled: config('app.show_footer'));
pnpm build:css:watch for live CSS updates.composer fix
pnpm test:visual
NorthwesternTheme::make()->modalsWithoutBorders();
.filament-table th { background: var(--nu-purple-surface) !important; }
notifications.css, badges.css) for easier overrides.composer update).How can I help you explore Laravel packages today?