No, it can’t. Here’s a few of the things missing from bootstrap:
Draggable
Droppable
Resizable
Selectable
Sortable
Datepicker
Progressbar
Saying “but some of those are HTML5 so we don’t need them” is not an excuse, it will be a long time before they are supported natively by all browsers.
So to support those things, you need jQuery UI anyway. And if we base everything else on bootstrap, that means that anyone wanting to use something other than bootstrap is screwed. We should continue to bless jQuery and jQuery UI, but the default CSS framework definitely needs to be optional, not required. I personally think foundation is a better option than bootstrap, but I wouldn’t advocate forcing it on anyone, just like bootstrap should not be forced on me
Other things are missing, just like jQuery UI lacks many Bootstrap components, but in my opinion the most important ones are covered. On the contrary, Foundation lacks many components.
You are not forced to use anything, just like you are not forced to use jQuery UI or Blueprint. However, if you want to keep jQuery UI, I think that jQuery Mobile should be included as well.
Note: I don’t want to impose anything, I’m here since the first alpha version of Yii and I think that Yii would be a better product if it standardizes the default template and components (which you can change) above Bootstrap 2.
You’re right, foundation doesn’t include these components, this is exactly the point, delegate this responsibility to jQuery UI which is a LOT more widely known and mature than bootstrap. If you make bootstrap the blessed CSS framework, you have to support 2 different types of autocomplete, 2 different types of tab widget etc. It’s overhead the core framework does not need.
If you’re so inclined you can use a jQuery UI bootstrap theme, will there be a foundation theme for bootstrap widgets? Never.
Yii should only provide abstract classes for UI components, eg. superset of jQueryUI, bootstrap and zurb, just as a comprehensive collection (UITabs, UISlider, UIResizeable, …) They may render very basic fallbacks, like a simple text input for a slider.
Now, you’re able to plug-in your own UI collection which is coded against this ‘interface’, Yii i.e. would currently provide jQueryUI as a default.
But, this is only the user-interface widget part of your site. You still need your grid CSS. As ekerazha mentioned you’re able to remove all the javascript stuff and use bootstrap just as a grid, see here.
And for the themes, you we could develop a solution based on jacmoe’s ideas with LESS. I personally would just like to see a theme manager which handles the inclusion of css (and js?) files, so that I would not have to update my views files, when using another theme. For sure I would need a ‘LESS translation’ file which translates the CSS in my view files onto the CSS classes in the new theme.
It’s a common practice for incompetent people to accuse others of “trolling” and make personal attacks instead of constructively discussing the topic.
That’s not a problem, nobody would be forced to use it. Nothing pleases everybody.
Bootstrap can replace most of the jQuery UI components and can also add many new components, a responsive grid etc.
Just drop jQuery UI and support Bootstrap. It was said that backward compatibility is not a Yii 2 priority.
I suggest to use Bootstrap 2 (and I think that there’s people who agree with me, as I often find positive votes for my posts). You replied that I can use a Bootstrap-like theme for jQuery UI. Then I said that “themes” are not the point here. You can keep arguing about “themes” with yourself.
I’m talking about the fact that development for mobile platforms is very important and if you don’t replace jQuery UI with a responsive “boilerplate” like Bootstrap (or Foundation… but I’d prefer Bootstrap 2 for the reasons that I’ve already explained), you should at least complete the jQuery gui family with jQuery Mobile.
With one breath you say “no one would be forced to use bootstrap”, with the next you say “drop jQuery UI and just use bootstrap components”, this is why I can’t tell if you’re trolling or not, your argument does not make sense.
You’re missing the point about themes, if I want to use foundation and Yii only supports bootstrap components, i am screwed. If Yii supports jQuery UI components you are free to drop them into bootstrap, or foundation, with neither being worse off. I only mention themes because there is a jQuery UI theme for bootstrap available, so you can drop that into your sites if you’re really craving that bland, generic bootstrap look.
jQuery mobile is not required because I think whatever we choose will come with a responsive grid, so what’s the advantage of including that with the core framework?
Anyway, I will stop going on about this for now, I’m sure the Yii team will make the right decision.
I suggest that Yii could use Bootstrap, but in the end people isn’t forced to use it.
No, because nothing prevents you from downloading and use Foundation or every other boilerplate. I’m talking about the default template and the bundled components, but nothing prevents you from using other components. Moreover, I’m talking about Bootstrap, I’m not talking about the Bootstrap “look”. I don’t suggest Bootstrap because of its “look”.
I suggest Bootstrap because in my opinion it would be a good choice to standardize and consolidate some heterogeneous Yii components (Blueprint, jQuery UI) under the umbrella of a unified boilerplate.
Dropping jQuery UI makes no sense it offers way more than bootstrap. Saying “bootstap offers most the stuff in jQuery UI” doesn’t cut it and is not the same as saying “it can replace all jQuery ui functionality”. Also jQuery UI is in heavy and constant development where as now new features can be added and updated that won’t be the case if you drop it. I suggest just keeping it KISS, use jQuery UI because as we’ve already seen in Yii currently; using non standard plugins to offer functionality is a train reck (CStarRating anyone?).
If you need a feature which jQuery UI provides while Bootstrap 2 doesn’t (DatePicker?), you can add jQuery UI to your own project, we can’t add everything to the base package.
Way to miss the point, jQuery UI does a LOT more than bootstrap. If we’re going to support one, it should be jQuery UI. Not bootstrap. Boostrap = restrictive, jQuery UI = less restrictive. What is so hard to grasp about this concept?
Bootstrap is a CSS framework, with some simplistic jQuery widgets thrown in. jQuery UI is a dedicated collection of interface widgets, and as such these widgets are much richer and comprehensive than those included in Bootstrap. Bootstrap is not a competitor to jQuery UI, it’s not in the same league, apples vs oranges. So it makes absolutely no sense, at all, to advocate dropping the widely known, widely used, widely extended jQuery UI for Bootstrap, just because it is “cool” at the moment. This doesn’t mean that the default output of ./yiic webapp can’t be bootstrap, just that we should continue to bless and support jQuery UI.
jQuery UI would hardly be an alternative here, since it lacks the typography etc. goodness of Bootstrap.
I’m saying that most of the jQuery UI components, most commonly used components, can be replaced by Bootstrap and Bootstrap can also be used to replace the Blueprint CSS so we could unify and standardize the base components under the umbrella of Bootstrap. In my opinion more specific components that you can find in jQuery UI and you cannot find in Bootstrap, could be moved outside the Yii base package. I don’t think this is a difficult concept to understand.
And everyone who doesn’t want to use bootstrap gets screwed because jQuery UI is no longer officially supported. I just think it’s obvious that you shouldn’t let your CSS framework dictate your JS framework.
Anyway, I’m done wasting my time arguing with you, your arguments are nonsensical (zii is bad but enforcing bootstrap on everyone is good, wtf?) I’m sure your proposal will never be adopted.