Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/awcodes/filament-sticky-header
A Filament Panels plugin to make headers sticky when scrolling.
https://github.com/awcodes/filament-sticky-header
filament filament-plugin
Last synced: 10 days ago
JSON representation
A Filament Panels plugin to make headers sticky when scrolling.
- Host: GitHub
- URL: https://github.com/awcodes/filament-sticky-header
- Owner: awcodes
- License: mit
- Created: 2022-06-16T16:40:34.000Z (over 2 years ago)
- Default Branch: 2.x
- Last Pushed: 2024-07-08T22:16:26.000Z (4 months ago)
- Last Synced: 2024-10-22T06:03:34.252Z (18 days ago)
- Topics: filament, filament-plugin
- Language: PHP
- Homepage:
- Size: 931 KB
- Stars: 62
- Watchers: 2
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
- Security: .github/SECURITY.md
Awesome Lists containing this project
- awesome-filament - awcodes/filament-sticky-header - A plugin to make headers sticky when scrolling. (UI)
README
## Filament Sticky Header
> **Warning**
> Does not work in Safari < v16.A Filament Admin plugin to make page headers sticky when scrolling.
![sticky-header-og](https://res.cloudinary.com/aw-codes/image/upload/w_1200,f_auto,q_auto/plugins/sticky-header/awcodes-sticky-header.jpg)
## Installation
Install packages via composer
```bash
composer require awcodes/filament-sticky-header
```## Usage
Just add the plugin to your panel provider, and you're good to go.
```php
use Awcodes\FilamentStickyHeader\StickyHeaderPlugin;public function panel(Panel $panel): Panel
{
return $panel
->plugins([
StickyHeaderPlugin::make(),
])
])
}
```### Floating Theme
To use the 'Floating Theme' use the `floating()` method when instantiating the plugin.
When using the floating theme you can also use the `colored()` method to add your primary background color to the header.
```php
use Awcodes\FilamentStickyHeader\StickyHeaderPlugin;public function panel(Panel $panel): Panel
{
return $panel
->plugins([
StickyHeaderPlugin::make()
->floating()
->colored()
])
]);
}
```Both the `floating()` and `colored()` methods can receive closure that will be evaluated to determine if the theme should be applied. This allows you to apply the theme conditionally, for instance, based off of user preferences.
```php
use Awcodes\FilamentStickyHeader\StickyHeaderPlugin;public function panel(Panel $panel): Panel
{
return $panel
->plugins([
StickyHeaderPlugin::make()
->floating(fn():bool => auth()->user()->use_floating_header)
->colored(fn():bool => auth()->user()->use_floating_header)
])
]);
}
```## Changelog
Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.
## Contributing
Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.
## Security Vulnerabilities
Please review [our security policy](../../security/policy) on how to report security vulnerabilities.
## Credits
- [Adam Weston](https://github.com/awcodes)
- [All Contributors](../../contributors)## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.