Comments (53)
@qiangxue @samdark I think the ideia of "yiiext.github.com" it's awesome, with "official" extensions, and not include many things on the CORE of Yii. The actual version (1.1.13) is already about 19Mb of size, when decompressed.
What do you think about? (it's only my opinion, I want to know yours).
from yii2.
First, this is an extension, meaning optional in downloading. So you shouldn't worry about download size.
Second, we want to officially maintain some commonly used extensions so that developers can have ready-to-use and high-quality tools they need without the worry of code breaks or discontinued support.
from yii2.
@qiangxue Thanks for explain it. It's good to know that will exist official extensions, this three qualities (ready-to-use|high-quality|continued support) on Yii tools are awesome features.
from yii2.
Will you separate this extension into an own repository?
from yii2.
Not this one, I guess.
from yii2.
Please consider it, we also had this discussion about the zii widgets, it's minimal overhead to include it as a package, but would greatly enhance the modularity of the framework.
E.g. if someone wouldn't use bootstrap at all he would not require this package and get a slimmer core. This applies also to any package which depends on other code, eg. zii-widgets depend on jQuery.
from yii2.
@qiangxue @samdark "officially maintain some commonly used extensions so that developers can have ready-to-use and high-quality tools they need without the worry of code breaks or discontinued support"
Bootstrap is an external source, what would happen if bootstrap is in the future replaced in use by, for example, the zurb foundation? I do not think that it should be officially supported but Yii should provide the right standards to avoid the creation of bad and buggy extensions and let developers do the rest.
from yii2.
@tonydspaniard we'll support one of these bootstrapping frameworks. Most probably it will be Twitter's since Foundation dropped support of IEs except the very latest too soon.
from yii2.
Yii2 should provide support for any CSS/UI framework and no framework or components should be tied to the core.
from yii2.
It will not be tied. It will be bundled.
from yii2.
Chris and I have nearly finished Yiistrap and Yiiwheels. We joined forces to improve its last library and also to stand up over YiiBooster, library that I no longer support, adding Yiiwheels to extend Yiistrap so to keep one and only library from Twitter Bootstrap's.
@samdark @qiangxue maybe would you consider adding both as one library to Yii2?
from yii2.
@tonydspaniard We can certainly consider adding them to Yii 2, provided that you are willing to modify the license terms to follow that of the existing Yii 2 code. Having said that, I think if we decide to move along this way, we need to agree on the design of the base classes first, and then modify the more concrete class implementations. Actually it will be almost like a rewrite. The main difference is that you have much more experience with these bootstrap widgets and probably have better idea than us on how to make them even better. Do you think this is fine with you? We may discuss further details in emails.
from yii2.
@qiangxue I would love to participate actively with them. My only concern is that I worked with Chris and what we did is a rewrite of his Yii-bootstrap and he asked me to keep the copyright. Nevertheless, Yiistrap is a library built for Yii 1.1.+ and I do not see any issue in building a new that will comply with Yii2 expectations.
I will ask Chris, as my ethics force me to do so, if he wishes to work with me in order to integrate Yiistrap + Yiiwheels into Yii2. Whatever his answer is, please count me in.
from yii2.
Hello, I'm joining in a bit late but I just wanted to say that I'm open for discussion about developing similar functionality as Yiistrap for Yii2. I would love to participate.
from yii2.
You use what version of Bootstrap ? v2.x or v3.x ?
from yii2.
Shouldn't the bootstrap
code go into https://github.com/yiisoft/yii2/tree/master/extensions? Same with jui
.
Otherwise it's in the core and it will be harder for developers the develop with other CSS frameworks.
from yii2.
I think it should.
from yii2.
What's the drawback of keeping bootstrap
in the core?
from yii2.
There are no drawbacks keeping it as official extension.
from yii2.
There is:
- The debug toolbar (will be in the core) will use bootstrap;
- It's possible some future core modules will depend on bootstrap.
from yii2.
- What if you prefer foundation? Both bootstrap and foundation will be loaded at the same time?
- Gii?
from yii2.
What if you prefer foundation? Both bootstrap and foundation will be loaded at the same time?
Nope. The debug toolbar itself won't use any CSS framework. It is the debug module that will display standalone debug pages which will use bootstrap.
Gii could be in either core or official extension. If it will be in the core, then that's another positive argument.
Basically my argument is that if we have some core code that depends on a CSS framework to work well, then we should keep this CSS framework in the core.
from yii2.
It's OK for me to keep bootstrap in the core as long as it's used for standalone modules only i.e. not conflicting with any user JS/CSS.
As for jui
, I think it worth moving into separate official package.
from yii2.
I agree moving jui
to extensions. We only need one such framework to use for GUI-related core code (with the assumption that it won't interfere with application code).
Regarding core vs. official extensions: the only advantage of using official extensions is that it makes the size of the core code smaller. Our situation is different from ZF2/SF2 since our extensions are not designed to be reused in other frameworks.
from yii2.
The debug toolbar (will be in the core) will use bootstrap;
In the toolbar composer.json: require: { "yiisoft/yii2-bootstrap": "1.x"}
It's possible some future core modules will depend on bootstrap.
Then they should be also released as separate extensions and require yii2-bootstrap.
That would be much cleaner, IMHO. And if you want to release a complete archive the build process should take care of this.
from yii2.
Why should we turn the debug toolbar into an extension? This will be used by almost all applications. Turning it into an extension means extra dependency for every application, and the only benefit is that it makes the size of the core code smaller.
from yii2.
No need to decouple toolbar. It will be used in 99% developer's environments, I think.
from yii2.
It is the debug module that will display standalone debug pages which will use bootstrap.
@qiangxue What exactly do you mean with that? Are these pages in the backend, which use CSS and components from bootstrap?
from yii2.
What exactly do you mean with that?
Components like Gii in 1.1 that use own UI not integrated in another layout. They can use bootstrap without conflicting.
from yii2.
But then twitter/bootstrap
should be at least in the require-dev
section of yiisoft/yii2
and a decent way should be provided how to update this dependency and recompile it, same applies to jquery
.
Or how would I update one of these?
from yii2.
Are there official composer packages for these?
from yii2.
Yes, we tried to use the twitter/bootstrap
package. Unfortunately, it uses LESS and needs to be compiled.
You can configure AssetManager::bundles
to use your chosen version of bootstrap or jquery.
from yii2.
Bootstrap yes. Jquery no.
Does AssetManager::bundles
download the version you specify, sorry I have almost no experience with grunt and npm? @tonydspaniard mentioned a composer npm bridge once.
from yii2.
Nope. You have to do it yourself.
from yii2.
No, AssetManager::bundles
won't download anything. It just maps the asset bundle names to the concrete asset files.
from yii2.
You can still make your application depend on the twitter/bootstrap
package. You just need to configure AssetManager::bundles
so that it will use the version in your package.
from yii2.
OK, sounds fine.
from yii2.
What is the remaining work for this issue? I'm moving this out of alpha.
from yii2.
@qiangxue Suggest to move yii\bootstrap
to extenstions
and rename it to bootstrap2
. Bootstrap 3 is out and this is not BC with 2.3.2 version.
from yii2.
I don't argee. Bootstrap 3 is not out yet, they released RC1 yesterday and it will still be some time before it's stable. I would however consider upgrading to Bootstrap 3 once it's stable. Even though there is a lot of changes not that much has actually changed. Yii's implementation of Bootstrap is quite shallow so it should be easy to do the necessary changes.
from yii2.
@crisu83 Bootstrap 2.3.2 will be actual a long time after 3 will be released. So its good to have both but as extensions, strictly not in yii 2 core.
from yii2.
I understand what you mean but I'm quite certain that Bootstrap 3 will quite quickly replace Bootstrap 2.3.2. We saw this already when Bootstrap 2 was released. Yii's core already contains a lot of built in functionality that other similar frameworks doesn't so I don't see why Bootstrap couldn't be a part of its core.
from yii2.
@crisu83 Ok, really does not matter for bootstrap 2 or 3 or for both this \yii\bootstrap will work. The main idea is to illiminate this from core. There is many reasons to do that. First is Bootstrap BC cycle !== Yii 2 BC cycle. After year there maybe another trend or event Bootstrap 4. When Yii 2 will be released we will have BC reasons. So this is very important to move bootstrap to official extensions
.
from yii2.
And about that
but I'm quite certain that Bootstrap 3 will quite quickly replace Bootstrap 2.3.2
If you work with bootstrap like with framework (customize that, etc) than NOT quickly. There is many project that used custom Bootstrap 2.3.2 builds in frontends.
from yii2.
I think better choice is Yii 2.0 with Bootstrap 2.3.2 in composer. We have composer. Maybe, ... Yii 2.1 will works with Bootstrap 3.0 ... I still prefer "decoupling" of components and framework. But Yii has another workflow.
from yii2.
But Yii has another workflow.
All fine with workflow here. See:
https://github.com/yiisoft/yii2/tree/master/extensions
Maybe @qiangxue just forget to move bootstrap to extensions.
from yii2.
@creocoder is right definitely must be extension and not in the core.
from yii2.
I'm actually starting to lean towards moving it to the official extensions. I haven't looked that much as Yii2 yet so I'm still getting to know the whole structure.
from yii2.
@tonydspaniard what's left on this one except the decision to move it to an extension or not?
from yii2.
Could support for Bootstrap 3 be added?
Bootstrap 3 has been officially released for 2 months now.
from yii2.
@doliver3 we have bootstrap 3 already ;)
from yii2.
<3
2013/10/22 Carsten Brandt [email protected]
@doliver3 https://github.com/doliver3 we have bootstrap 3 already ;)
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/20#issuecomment-26783002
.
from yii2.
Bootstrap support implemented.
from yii2.
Related Issues (20)
- Implicit conversion from float in Formatter HOT 3
- AjaxValidation: ajax response with validation errors is not processed in 2.0.47 - 2.0.49.1 HOT 4
- ActiveReccord save, attributes issue HOT 3
- Missing BaseActiveRecord methods mentioned in documentation HOT 2
- add attribute on generated <script> tag HOT 3
- ActiveRecord::getRelation("????", false) throw ArgumentCountError exception HOT 1
- [Feature request] Yii gettext translations could support comments in PO files
- requires bower-asset/jquery HOT 1
- Broken asArray when creating new models HOT 1
- Is this expected behaviour on unsafe attributes validation? HOT 5
- BaseActiveRecord save method behaviour HOT 1
- Setting YII_DEBUG=false in humhub 1.15.2 leads to internal server error HOT 2
- Memory usage leak when long operation HOT 6
- createControllerByID function add cache? HOT 14
- Relational queries populating invalid models when foreign key / linking value is 0 HOT 1
- request` failed for
- asDuration() produce wrong plural form when using russian locale HOT 2
- hasOne or hasMany return null when $link with two bigint element
- YII2 whether support reset-transaction? HOT 1
- PHP Deprecated: Calling session_set_save_handler() in `PHP 8.4`. HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yii2.