Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Frontend, update bootstrap 4 #666

Closed
dungmediabridge opened this issue Jan 29, 2019 · 10 comments
Closed

Frontend, update bootstrap 4 #666

dungmediabridge opened this issue Jan 29, 2019 · 10 comments

Comments

@dungmediabridge
Copy link

No description provided.

@XzAeRo
Copy link
Member

XzAeRo commented Jan 29, 2019

This issue is directly related to #632 and #651.

We need to implement #651 before considering to use Bootstrap 4 since many Yii2 widgets are tied to Bootstrap 3 in the 2.0.x version. But as said in that issue, the development off Yii3 is still in progress since many things got separated from the base framework into several repositories (this article explains very well the current situation).

We could theoretically start working on it right away, but this is a change we can't take lightly since it will require a lot of codebase changes.

I will create a new branch for the Yii3 upgrade, including the Bootstrap 4 and AdminLTE 3 update that is being requested.

@kwazaro
Copy link

kwazaro commented Jan 31, 2019

Is it possible to avoid NPM build tools in new branch? Not all hostings support node.js and java (Yii2 guide for assets management recommends java .jar tools for combining assets). Is there another way to buold frontend scripts remotely (on server side without node)?

@rivieiraa
Copy link
Contributor

rivieiraa commented Jan 31, 2019

https://robo.li maybe, as task runner.
Not sure we can avoid using node. Never heard about Babel like tool writen in another language than JS.

@rivieiraa
Copy link
Contributor

https://deployer.org is also a variant to solve problem of not having node available on remote host machine

@kwazaro
Copy link

kwazaro commented Jan 31, 2019

The Idea is to have the ability to completely move all development on remote hosting (simple, plain shared hosting without NODE, JAVA and additional software installation, except Composer, Git and access via SSH). Not every project really requires full-stack dev. environment and all that complex things like docker, vagrant etc.

@XzAeRo
Copy link
Member

XzAeRo commented Jan 31, 2019

Not every project really requires full-stack dev. environment and all that complex things like docker, vagrant etc.

Completely agree, but most of the current development and production trends are gearing towards virtualization, so including these stuff is kind of necessary, specially for an "starter pack".

Anyway, I agree that NPM/Yarn shouldn't be necessary to build files into production (at least not mandatory). This can be fixed just by including the generated files during development into the bundle folder. Now, should we as yii2-starter-pack project force this approach, or let each developer to choose what to do? Maybe just a small documentation about it would be enough.

@rivieiraa
Copy link
Contributor

rivieiraa commented Jan 31, 2019

Bootstrap options should be available. Leaving docker and NPM type of bootstraping app/assets is a good idea for starter kit. Voting for keeping all the NPM and virtualization stuff as is.

@kwazaro
Copy link

kwazaro commented Jan 31, 2019

Every developer, perhaps, has his own dev. software on his machine. And everyone can use what he want. But the result should be always the same: folder with assets (images, js, fonts, css) with compiled and minified files. In my development workflow with Yii2 I can do almost everything on remote shared hosting via SSH, EXCEPT frontend processing. I have to use Gulp, because Yii framework has no tools for that. This keeps me to have my local machine with installed NPM, NODE and a lot of other things, which I don't need in most cases.
I think we should find some PHP library, which can do all that frontend things, like SCSS compiling, concat, minification, image optimization - without any additional software, like Node, Docker etc. And it should be included in Starter kit by default with precompiled frontend files,
Today I tried again to install Yii2 Starter Kit on my hosting and got failed, because of NPM and problems with configuring /backend, /storage, /frontend for single-domain. I think this kit is great, but it will attract more developers, when the installation process will be more convenient and will not require additional specific software.

@rivieiraa
Copy link
Contributor

rivieiraa commented Jan 31, 2019

Is there another way to buold frontend scripts remotely (on server side without node)?

In case you know how to transpile ES6->ES5 and use module system w/o bundler. I guess it's the most popular use case for bundlers these days.

@XzAeRo
Copy link
Member

XzAeRo commented Apr 1, 2020

Please follow #745 for updates.

@XzAeRo XzAeRo closed this as completed Apr 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants