rappasoft / laravel-boilerplate

The Laravel Boilerplate Project - https://laravel-boilerplate.com
https://rappasoft.com
5.58k stars 1.58k forks source link

Considering update to Laravel 5.5 #788

Closed mikimaine closed 6 years ago

mikimaine commented 7 years ago

Since Laravel 5.5 will be released this month should we consider updating this based on the dev branch of Laravel 5.5?

rappasoft commented 7 years ago

@derekphilipau I'm trying to get BS4 to work on the frontend right now, all assets are there it's just not working, thoughts?

rappasoft commented 7 years ago

Maybe you can take a look: https://github.com/rappasoft/laravel-5-boilerplate/commit/ebc594b425ad47b6e75f32992bc33edaaae1f29f

derekphilipau commented 7 years ago

i just did a fresh install of that branch, changed the BS4 package from alpha to "bootstrap": "^4.0.0-beta",, installed, ran npm run dev and the generated frontend.css definitely includes Bootstrap v4.0.0-beta. Do you mean the formatting of the blade files (like navbar)? I can adapt the frontend templates to BS4 tomorrow. Head of the frontend.css looks like this:

@import url(https://fonts.googleapis.com/css?family=Raleway:300,400,600);

/*!
 * Bootstrap v4.0.0-beta (https://getbootstrap.com)
 * Copyright 2011-2017 The Bootstrap Authors
 * Copyright 2011-2017 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
rappasoft commented 7 years ago

I know it's included, yes the formatting, I just assumed the markup was the same. I guess not.

derekphilipau commented 7 years ago

hmm, i see what you mean. i just tried disabling a lot of extra stuff like debugbar and replaced the index with https://v4-alpha.getbootstrap.com/examples/starter-template/, still didn't work correctly, navbar especially. i can look at it in about 8 hrs. if you want to work on other stuff

rappasoft commented 7 years ago

Yeah something isn't fully right. I got some stuff to work if you pull most recent.

nasirkhan commented 7 years ago

Tough it is not completed, but i checked the BS4 and it is working perfectly. You can check at https://github.com/nasirkhan/laravel-5-boilerplate

rappasoft commented 7 years ago

The current 5.5 branch is working for you and doesnt look like crap?

nasirkhan commented 7 years ago

@rappasoft sorry previous comment gone missing.

rappasoft commented 7 years ago

BS4 no longer uses glyph?

nasirkhan commented 7 years ago

no it is not in the library. Details: https://getbootstrap.com/docs/4.0/extend/icons/

shirshak55 commented 7 years ago

Bs4 uses favicons isnt it

On Sep 13, 2017 11:56 PM, "Nasir Khan Saikat" notifications@github.com wrote:

no it is not in the library. Details: https://getbootstrap.com/docs/4.0/extend/icons/

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/rappasoft/laravel-5-boilerplate/issues/788#issuecomment-329251402, or mute the thread https://github.com/notifications/unsubscribe-auth/AHuOYaXAW8nD8Mbbgh2CxKNoVFMiCtEEks5siBrWgaJpZM4OVYnz .

rappasoft commented 7 years ago

No it ships with none and lets you choose.

shirshak55 commented 7 years ago

Sorry i means fontawesome fa.

On Sep 14, 2017 1:39 AM, "Anthony Rappa" notifications@github.com wrote:

No it ships with none and lets you choose.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/rappasoft/laravel-5-boilerplate/issues/788#issuecomment-329278693, or mute the thread https://github.com/notifications/unsubscribe-auth/AHuOYaSzS3iskFhO7bGTyZVldWsMyZ83ks5siDMMgaJpZM4OVYnz .

rappasoft commented 7 years ago

Index works BS4 now. Have to do the rest of the views.

rappasoft commented 7 years ago

So as far as the backend with CoreUI, would it be best to do an HTML frame and have the Vue components in there, I don't know if I want it to be SPA style because less people will be able to use it. I think the routing should be handled by Laravel and just inject the components it needs in.

nasirkhan commented 7 years ago

I also agree with you that the routes should be handled by Laravel and please do not make it a SPA

derekphilipau commented 7 years ago

I spent the morning trying to integrate https://github.com/ARCANEDEV/LogViewer (BS3.3.5, Jquery, etc.) with Laravel 5.5/BS4/CoreUI/Vue. It's a lot of work for what I personally feel is little gain. I'm fine with the old backend, it doesn't have to be pretty but simple, stable & functional. Having said that, I still plan on using Laravel 5.5/BS4/CoreUI/Vue for the front-end.

rappasoft commented 7 years ago

Is CoreUI BS4 only? I don't want to have different versions of bootstrap for frontend and backend. I'm not going to use any plugin that doesn't support BS4, or if I do, it would use their vendor files and just call their routes.

What part of CoreUI are you using for your frontend @derekphilipau?

derekphilipau commented 7 years ago

My laravel/vue app has a complicated frontend that a "dashboard" is perfect for, so I'm trying CoreUI Vue. Also I'm learning from their use of vue-router, bootstrap-vue, and vue-chartjs. I think CoreUI was just started a year ago and was always BS4? Looks like AdminLTE is planning to go BS4 for next major release. I agree it would be great to be as consistent as possible between front/backend by using BS4, but LogViewer might be a problem. It would be pretty simple to update the LogViewer blade templates for BS4, but removing jquery more difficult (and not really necessary unless you want pure Vue). I can try to help with the LogViewer, first see if the dev is interested.

rappasoft commented 7 years ago

Well bootstrap requires jquery anyway so what would be the issue?

shirshak55 commented 7 years ago

AdminLTE seems not to switch to bootstrap 4 until it releases full stable version. It might takes year for bootstrap 4 version whereas every other popular library uses bootstrap 4.

derekphilipau commented 7 years ago

Projects like https://bootstrap-vue.js.org/ and vue-chartjs are making it possible to go "pure" Vue, with absolutely no dependence on jquery. But I think for backend it's not a huge issue to stay with jquery, boilerplate backend can always be updated later once Vue alternatives to jquery-dependent components are more stable

rappasoft commented 7 years ago

I don't know enough about Vue to go full Vue, nor do I think I want to make this Vue-centric, because it will make it harder for people to update. I'm still old-school I don't use this fancy stuff yet lol

nasirkhan commented 7 years ago

@rappasoft From my understanding updating the Laravel and use some related packages are the first priority and then everything else. Releasing fast and in phases could be a strategy. We can go full Vue but as it is a Laravel focused project and you are not that fluent in that we can try to do it later on.

We may start with CoreUI Ajax or minimal Vue. Do doing so we will get a new look with BS4, jQuery, and the Laravel backend will be ready to use was a complete product.

After the release we can discuss and add more Vue. That part can be done via PR. what is your plan.

rappasoft commented 7 years ago

I'm doing my best to swap out all the custom stuff I had to manage to an external package that someone else manages, for example the history is being swapped for a package that tracks changes to models (not as robust but still useful)

I think the plan since I already have BS4 working on the frontend, is to use the static version os CoreUI for the backend using BS4, and rebuild what we have. Then from there after we launch we can start converting some components of the backend to the CoreUI Vue equivalent.

nasirkhan commented 7 years ago

I also mentioned the same. Vue should be added when we have a stable BS4 version.

When you think you are ready please let us know, I would love to assist you here.

derekphilipau commented 7 years ago

I created an issue to see if https://github.com/ARCANEDEV/LogViewer has any plans for a BS4 version. Anyway, I have already converted some of its blade files in order to assess difficulty. Mostly typical BS3->BS4 issues. If there is any response or progress I will let you know.

rappasoft commented 7 years ago

I converted the frontend to BS4 after reading the docs, it is not perfect in all screen sizes if someone can fix and make a PR for all the frontend views please.

derekphilipau commented 7 years ago

Today I made a "themeable" version of LogViewer, now it can show either BS3 or BS4. I hope someone here will take a look at it before I try a PR. I'm not clear about how to develop/test a laravel package, please see README_TEST.md file for how I did things. https://github.com/derekphilipau/LogViewer

nasirkhan commented 7 years ago

@rappasoft Any update regarding this new release?

rappasoft commented 7 years ago

Been giving it almost 5 hours a day for a few weeks now. It is just a side project. It's about 50% done. It's not going to have core ui vue version at launch.

On Sep 17, 2017, at 05:55, Nasir Khan Saikat notifications@github.com wrote:

@rappasoft Any update regarding this new release?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

nasirkhan commented 7 years ago

@rappasoft do not get me wrong. I am not pushing to release fast. I know it is your side project. You are maintaining this project for a long time and consistently updating. Only a very few starter project or cms could do that so far. Thanks for your great effort. Actually i wanted to start a new project on Laravel 5.5 based on this boilerplate. I know it has some important features and if i have an idea about the release dates then i can continue to explore the other parts of Laravel.

rappasoft commented 7 years ago

Probably at least a couple of weeks, not counting tests or documentation.

Here's the back so far:

screen shot 2017-09-17 at 16 00 23
rappasoft commented 7 years ago

For those of you itching, the current branch is pretty far along minus the user/roles CRUD UI and some other stuff.

rappasoft commented 7 years ago
screen shot 2017-09-17 at 23 19 08
derekphilipau commented 7 years ago

Looks great! If I can help with anything please let me know. I just put in a PR for LogViewer, adding "themes". Don't know how the PR will go, but right now you can easily update the current LogViewer to BS4 simply by replacing the views directory with the BS4 version in my repository: https://github.com/derekphilipau/LogViewer/tree/master/resources/views/bootstrap-4

rappasoft commented 7 years ago

Awesome i'll definitely use that to save some time thanks! If you have time, can you download the current build and try to replicate the issue I posted here: https://github.com/spatie/laravel-activitylog/issues/268

Something else seems to be interacting with that extension and causing weird behavior. Let me know if anyone can replicate that behavior on their end or if its just me.

rappasoft commented 7 years ago

Also if anyone wants to make the language dropdown in the backend more compact since it goes off the screen that would be helpful.

And also the frontend views are bootstrap 4, but I haven't optimized them for mobile yet, if anyone has time and wants to contribute.

shirshak55 commented 7 years ago

@derekphilipau its working for me thanks

derekphilipau commented 7 years ago

i'll check out the activitylog problem. this might be of help to one of you- i just spent two hours figuring out why npm wasn't installing anything, re-installed everything on my system, finally realized it's actually a problem with the css-beautify.js, just manually install npm install js-beautify@1.6.14 and specify the right dependency in your package.json npm ERR! enoent ENOENT: no such file or directory, chmod '....../..../.../node_modules/js-beautify/js/bin/css-beautify.js'

rappasoft commented 7 years ago

Haven't had that problem, is it CoreUI related?

derekphilipau commented 7 years ago

js-beautify is a dependency of vue, so during yesterday while the js-beautify npm was broken, all npm installs of anything requiring vue (including boilerplate) were failing. resolved now: https://github.com/beautify-web/js-beautify/issues/1254

nasirkhan commented 7 years ago

Yesterday i faced the same issue with npm and not is has been resolved.

@rappasoft i can look into the frontend to make it responsive. Regarding the long dropdown usually i use Select2 (http://select2.github.io/) if you think it is ok, i can integrate that too.

minedun6 commented 7 years ago

@nasirkhan is it possible to integrate select2 plugin using vue ? so far I haven't been able to use it with Vue. Maybe I didn't know how to but I'd like to see integrated for future use.

derekphilipau commented 7 years ago

@minedun6 @nasirkhan You can look at these vue components: https://github.com/sagalbot/vue-select https://github.com/monterail/vue-multiselect

However, if you look through the comments for this issue you will see that Vue will not be used, boilerplate only provides the framework on which you can build a Laravel application (with Vue if you choose).

nasirkhan commented 7 years ago

for the next release it will not be a Vue project. so Select2 should be ok. I think we should check the other possibilities of using Select2-Vue libraries after this release.

shirshak55 commented 7 years ago

I guess there is no problem in submitting PR . You can check out 5.5 feature branch and pull request those branch. Yes next release won't be vue but later will be so we will think vue later. Lets release this coreui version as soon as possible.

And Arcanedev has already created branch for bootstrap 4 so it is expected to release soon . I guess we should work on backend other parts as soon as possible.

rappasoft commented 7 years ago

I'd rather try to fix it without an extra plugin first.

Maybe by dropping the font size or padding.

On Sep 19, 2017, at 06:31, Shirshak Bajgain notifications@github.com wrote:

I guess there is no problem in submitting PR . You can check out 5.5 feature branch and pull request those branch. Yes next release won't be vue but later will be so we will think vue later. Lets release this coreui version as soon as possible.

And Arcanedev has already created branch for bootstrap 4 so it is expected to release soon . I guess we should work on backend other parts as soon as possible.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

nasirkhan commented 7 years ago

As it is just links we can add multiple columns in the drop down.

On Sep 19, 2017 5:45 PM, "Anthony Rappa" notifications@github.com wrote:

I'd rather try to fix it without an extra plugin first.

Maybe by dropping the font size or padding.

On Sep 19, 2017, at 06:31, Shirshak Bajgain notifications@github.com wrote:

I guess there is no problem in submitting PR . You can check out 5.5 feature branch and pull request those branch. Yes next release won't be vue but later will be so we will think vue later. Lets release this coreui version as soon as possible.

And Arcanedev has already created branch for bootstrap 4 so it is expected to release soon . I guess we should work on backend other parts as soon as possible.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/rappasoft/laravel-5-boilerplate/issues/788#issuecomment-330513890, or mute the thread https://github.com/notifications/unsubscribe-auth/AAYOu4jTA2_JgwguatxXC92dWYbCZPLTks5sj6lwgaJpZM4OVYnz .