kfoobar / laravel-theme
Theme support for Laravel
Installs: 31
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 1
Type:project
Requires
- php: ^8
- ext-json: *
- illuminate/config: ^8.0||^9.0||^10.0
- illuminate/database: ^8.0||^9.0||^10.0
- illuminate/support: ^8.0||^9.0||^10.0
README
Lightweight package for Laravel 8/9/10 that adds simple support for themes.
Installation
You can install the package with Composer:
composer require kfoobar/laravel-theme
The package will automatically register itself.
Publish config file (optional)
Run the following command to publish the config file:
php artisan vendor:publish --tag theme-config
Add default folders (optional)
The package will automatically load config files from config/themes/*
and view files resources/views/themes/*
.
To create those folders, run the following command:
php artisan theme:install
How does it work?
The package helps you load config files and display view files based on the theme you have set.
You set which theme you want to use in your .env
file:
APP_THEME=light
Config files
The package will help you manage multiple config files for your themes. Based on the theme you have set, the settings will be automatically merged into the config/theme.php
file.
In the background, the package will load config/themes/light.php
and merge it into config/theme.php
. This will enable you to use the same config keys no matter what theme you have set:
config('theme.logo')
View files
The package also help you load the correct view files based on the theme you have set, by using theme()
instead of view()
in your controllers:
public function index() { return theme('index'); }
When using the theme()
function, the package will try to load the view file from the following paths and order:
/resources/views/themes/light/index.blade.php
/resources/views/theme/default/index.blade.php
/resources/views/index.blade.php
Use with Tailwind CSS
This package has no support for Tailwind CSS by it self, but we recommend using this package:
npm install -D tw-colors
Full documention can be found here: https://github.com/L-Blondy/tw-colors
Contributing
Contributions are welcome!
License
The MIT License (MIT). Please see License File for more information.