- Bootstrap
- EPFL plugin
- EPFL jQuery
- EPFL jQuery (no-tracking)
- EPFL Zepto
- EPFL Zepto (no-tracking)
- jQuery noConflict
- AbstractPlugin
- Lazy loading plugin
- plugins
- EPFL accessibility plugin
- EPFL analytics plugin
- EPFL global navigation plugin
- EPFL ajax header plugin
- EPFL share plugin
- ui-lib
- Core
- Ellipsis
- AbstractWidget
- Library Loader
- widgets
- Accordions
- Alert
- Carousel
- Collapse
- Dialog
- Filter
- Gallery
- List
- Menu
- Menubar
- Notification
- Overlay
- Slideshow
- Sort
- Tabs
- Toggle
- Toolbar
- Tooltip
- Tree
Bootstrap
Provides a front-end framework for easier integration of the EPFL graphic charter.
Developers: Julien Ramboz, Francesco De Rose
Maintainers: Olivier Bieler, William Belle
Backup: Gregory Charmier
User Documentation: EPFL Bootstrap, Blog
Technical Documentation: Confluence
Git: kis-bootstrap
Infrastructure
See the infrastructure page on Confluence.
Setup
Prerequisites
You will need a recent version of nodejs (>=8.0.0). You can install it via nvm.
If not already installed, also add:
On Linux use
sudo apt-get install ...
instead of brew.Project installation
Then, to get started on the project:
git clone git@github.com:epfl-idevelop/kis-bootstrap.git cd kis-bootstrap npm install bower install
Project structure
The application folder is organised as follows:
app/
app/doc
app/doc/styleguide
app/doc/styleguide/_theme
app/images
app/images/icons
app/images/sprites
app/includes
app/scripts
app/scripts/plugins
app/scripts/ui-lib
app/styles
app/templates
app/vendor
build/
release/
tests/
tools/
bower.json
Gruntfile.coffee
package.json
README.md
Grunt tasks
Various grunt tasks are available for the project. They are as follows:
grunt
grunt release-staging
grunt build
grunt build-ci
grunt build-opt
grunt serve
grunt serve-opt
grunt test
grunt test-ci
grunt test-opt
grunt bump:patch
grunt bump:minor
grunt bump:major
grunt compress
release/
Build
To start the development server (non-optimized files):
To start the production server (optimized files):
Updating the global header
Edit the following files:
Test
To test the library using the default non-optimized require loading:
grunt test
To test the library using the optimised single-file require loading:
grunt test-opt --force
Deploy
Check the changes since the last release (vX.Y.Z):
Update the changelog accordingly, and then:
For staging, do:
or for production:
Finally execute this command on each infrastructure
In case a problem in production occurs on the current version do a roll back
~/app.sh rollback 0.15.0 rm -rf ~/static.epfl.ch/v0.16.0/ ~/app.sh deploy epfl-bootstrap-v0.16.0-release.tgz
Tagging
git tag -a v<version> -m "Version <version>" git push --tags
and don't forget to post release info on the blog.
Useful links