themes icon indicating copy to clipboard operation
themes copied to clipboard

ThemeServiceProvider not found

Open thewebartisan7 opened this issue 6 years ago • 3 comments

I follow installation guide, which is:

  1. laravel new themes // installed laravel
  2. composer require caffeinated/themes // installed package
  3. php artisan make:theme Bootstrap // created theme

Now works fine if I try to load view, for example bootstrap::welcome

But routes are not loaded, so I added service provider to config/app.php

  1. Themes\Bootstrap\Providers\ThemeServiceProvider::class

And now I get error Class 'Themes\Bootstrap\Providers\ThemeServiceProvider' not found

So I update main composer.json adding PSR-4 for "themes" folder, this:

"autoload": {
        "psr-4": {
            "App\\": "app/",
            "Themes\\": "themes/"
        }
    },

And now works fine...

But there is nothing regarding this step in docs, and I think that command for make theme already update composer...

What am I missing?

Thanks

thewebartisan7 avatar Jan 15 '20 04:01 thewebartisan7

shouldn't be needed - refactoring this in a future update

kaidesu avatar Feb 06 '20 20:02 kaidesu

Hey there, thanks for this package, I've been using caffeinated/modules to great success and am glad to see a themes package as I was previously using a Themes location in caffeinated/modules,

Just getting started with this, it appears step 4 is still required? My routes aren't loaded until that line is added and this line in the document is still present even though there is no longer a ThemeServiceProvider in laravel:

NOTE

Be sure to register your custom service providers within your ThemeServiceProvider. Refer to Laravel's service provider documentation as needed.

instudentmedia avatar Jul 31 '20 00:07 instudentmedia

Looks like you do need a call to:

Theme::set(config('themes.active'));

In your AppServiceProvider's boot method as referenced in https://github.com/caffeinated/themes/issues/72

instudentmedia avatar Jul 31 '20 01:07 instudentmedia