granite-bootstrap - Vaadin Add-on Directory
Wrapping of *Bootstrap CSS* as Polymer web componentto be used as shared style in full ShadowDOM mode
**[ This description is mirrored from README.md at [github.com/LostInBrittany/granite-bootstrap](https://github.com//LostInBrittany/granite-bootstrap/blob/4.1.1-0/README.md) on 2019-05-22 ]**
[![Published on webcomponents.org](https://img.shields.io/badge/webcomponents.org-published-blue.svg)](https://www.webcomponents.org/element/LostInBrittany/granite-bootstrap)
## granite-bootstrap
*granite-bootstrap* is a wrapping of [Bootstrap](http://getbootstrap.com/) CSS as [Polymer](https://www.polymer-project.org/) [shared styles modules](https://www.polymer-project.org/1.0/docs/devguide/styling.html#style-modules) (i.e. inside `` tags).
> This project replaces and updates [polymer-bootstrap](https://github.com/LostInBrittany/polymer-boostrap), that won't be updated anymore
> Hybrid Polymer element, 1.x-2.x ready
## Doc & demo
[https://lostinbrittany.github.io/granite-bootstrap](https://lostinbrittany.github.io/granite-bootstrap)
### Using *granite-bootstrap* modules
Using polymer [style modules](https://www.polymer-project.org/3.0/docs/devguide/style-shadow-dom#style-modules) modules is a two-step process: you need to use ES6 module imports to import the module, and a `
```
#### A complete example
```
Hi
```
### Generating the style modules
To generate the style modules we use the [granite-css-modularizer](https://github.com/LostInBrittany/granite-css-modularizer) node script:
#### 1. Clone the repository and recover the dependencies of `granite-css-modularizer`
Clone the [granite-css-modularizer](https://github.com/LostInBrittany/granite-css-modularizer) repository and recover the dependencies using `yarn` (or `npm`) :
```
$ yarn install
yarn install v1.2.1
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 0.83s.
```
#### 2. Recover Bootstrap
Recover Bootstrap distribution using `yarn` (or `npm`):
```
$ yarn add bootstrap@4.0.0-beta.2
yarn add v1.2.1
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning "bootstrap@4.0.0-beta.2" has unmet peer dependency "jquery@1.9.1 - 3".
warning "bootstrap@4.0.0-beta.2" has unmet peer dependency "popper.js@^1.12.3".
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 1 new dependency.
└─ bootstrap@4.0.0-beta.2
Done in 0.55s.
```
Currently *granite-bootstrap* uses Bootstrap version 4.0.0-beta.2, if you need another version you can change simply install it.
#### 3. Generate the components
Using NodeJS and the `granite-css-modularizer.js` to transform Bootstrap CSS files into polymer elements.
```
$ node ../granite-css-modularizer.js ./node_modules/bootstrap/dist/css ./css_modules/granite-bootstrap
```
After executing it, a series of HTML files is generated in the `./css_modules/granite-bootstrap` folder, each one corresponding to a Bootstrap CSS file.
```
$ ls ./css_modules/granite-bootstrap/*.html
granite-bootstrap-grid.html granite-bootstrap-grid-min.html granite-bootstrap.html granite-bootstrap-min.html granite-bootstrap-reboot.html granite-bootstrap-reboot-min.html
```
## Contributing
1. Fork it!
2. Create your feature branch: `git checkout -b my-new-feature`
3. Commit your changes: `git commit -m 'Add some feature'`
4. Push to the branch: `git push origin my-new-feature`
5. Submit a pull request :D
## Install dependencies and run the demo
+ Run npm install from the repo directory:
```
npm install
```
+ Run the Polymer development server from the root project directory:
```
polymer serve --open
```
## Note on semver versioning
I'm aligning the versions of this element with Bootstrap version, in order to make easier to choose the right version
## License
[Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0)
View on GitHub
Documentation
Online Demo
View on NPM
GitHub Homepage
Issue tracker
granite-bootstrap version 3.3.7-3
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 3.3.7-4
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 3.3.7-5
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 4.0.2-beta.2.1
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 4.0.2-beta.2.2
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 4.0.0-0
### Dependencies
* polymer#Polymer/polymer#1.9 - 2
granite-bootstrap version 4.1.1-0
### Dependencies
* @polymer/polymer#^3.0.0
* bootstrap#^4.1.1
granite-bootstrap version 4.1.1-1
### Dependencies
* @polymer/polymer#^3.0.0
* bootstrap#^4.1.1
granite-bootstrap version 4.3.1-0
### Dependencies
* @polymer/polymer#3.3.0
granite-bootstrap version 4.3.1-1
### Dependencies
* @polymer/polymer#3.3.0