Diferencia entre revisiones de «Usuario:Juanda/bootstrap/Themes»
De WikiEducator
< Usuario:Juanda | bootstrap
(→Instalaciones mediante npm) |
|||
| (10 revisiones intermedias por el mismo usuario no mostrado) | |||
| Línea 24: | Línea 24: | ||
<source lang="bash"> | <source lang="bash"> | ||
./configure | ./configure | ||
| − | + | make | |
sudo make install | sudo make install | ||
</source> | </source> | ||
| Línea 39: | Línea 39: | ||
<div class="slide"> | <div class="slide"> | ||
| + | |||
===Bower=== | ===Bower=== | ||
*npm es el gestor de paquetes que utiliza nodejs. | *npm es el gestor de paquetes que utiliza nodejs. | ||
| Línea 55: | Línea 56: | ||
root@juandapc:/home/juanda# npm install -g bower | root@juandapc:/home/juanda# npm install -g bower | ||
root@juandapc:/home/juanda# npm install -g grunt-cli | root@juandapc:/home/juanda# npm install -g grunt-cli | ||
| − | root@juandapc:/home/juanda# npm install -g | + | root@juandapc:/home/juanda# npm install -g less |
</source> | </source> | ||
| Línea 79: | Línea 80: | ||
<div class="slide"> | <div class="slide"> | ||
| − | === | + | |
| + | ===ThemeStrap=== | ||
| + | *Vamos a utilizar [https://github.com/divshot/themestrap ThemeStrap] para hacer nuestro theme de Bootstrap | ||
| + | *Es muy poco intrusivo: si Bootstrap cambia, nuestro theme debería actualizarse de forma sencilla. | ||
| + | *Themestrap nos da dos únicos ficheros para modificar: variables.less y theme.less (en el directorio less). El fichero variables.less original no se toca. | ||
| + | |||
*Vamos a clonar una copia de Themestrap para hacer nuestro tema. Yo la voy a llamar bootstrap-theme-daw | *Vamos a clonar una copia de Themestrap para hacer nuestro tema. Yo la voy a llamar bootstrap-theme-daw | ||
<source lang="bash"> | <source lang="bash"> | ||
| Línea 91: | Línea 97: | ||
</source> | </source> | ||
| + | *Actualizaremos el fichero bower.json: | ||
| + | <source lang="bash"> | ||
| + | root@juandapc:/home/juanda/bootstrap/bootstrap-theme-daw# cat bower.json | ||
| + | { | ||
| + | "name": "bootstrap-theme-themestrap-sample", | ||
| + | "version": "0.0.1", | ||
| + | "private": true, | ||
| + | "author": "Your Name", | ||
| + | "main": "dist/bootstrap.css", | ||
| + | "themestrap": { | ||
| + | "name": "Themestrap Sample", | ||
| + | "repo": "https://github.com/divshot/themestrap" | ||
| + | }, | ||
| + | "ignore": [ | ||
| + | "**/.*", | ||
| + | "node_modules", | ||
| + | "bower_components", | ||
| + | "test", | ||
| + | "tests" | ||
| + | ], | ||
| + | "dependencies": { | ||
| + | "bootstrap":"3.0.0" | ||
| + | } | ||
| + | } | ||
| + | root@juandapc:/home/juanda/bootstrap/bootstrap-theme-daw# | ||
| + | |||
| + | </source> | ||
| + | |||
| + | *Los campos nombre y autor son los más importantes. | ||
| + | *themestrap/name y themstrap/repo solo son útiles si publicamos nuestro tema en GitHub y lo compartimos con Bower (lo veremos más adelante). | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
| − | === | + | ===Instalación de módulos=== |
| − | * | + | *Ejecutamos el comando npm install. |
| − | + | *Se instalaran todas las librerías javascript que están en el fichero package.json. | |
| − | * | + | |
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
| − | === | + | ===Configuración de bower=== |
| − | * | + | *El fichero bower.json debe quedar similar a lo siguiente: |
| − | * | + | <source lang="bash"> |
| − | * | + | root@juandapc:/home/juanda/bootstrap/bootstrap-theme-daw# cat bower.json |
| + | { | ||
| + | "name": "bootstrap-theme-themestrap-sample", | ||
| + | "version": "0.0.1", | ||
| + | "private": true, | ||
| + | "author": "Your Name", | ||
| + | "main": "dist/bootstrap.css", | ||
| + | "themestrap": { | ||
| + | "name": "Themestrap Sample", | ||
| + | "repo": "https://github.com/divshot/themestrap" | ||
| + | }, | ||
| + | "ignore": [ | ||
| + | "**/.*", | ||
| + | "node_modules", | ||
| + | "bower_components", | ||
| + | "test", | ||
| + | "tests" | ||
| + | ], | ||
| + | "dependencies": { | ||
| + | "bootstrap":"3.0.0" | ||
| + | } | ||
| + | } | ||
| + | |||
| + | </source> | ||
| + | *Main es el punto donde se va a instalar nuestro paquete | ||
| + | <source lang="bash"> | ||
| + | juanda@juandapc:~/bootstrap/bootstrap-theme-daw$ bower install | ||
| + | </source> | ||
| + | |||
| + | *Una vez instalado bower, tendremos un directorio bower_components con los componentes que nuestro proyecto necesita (en principio boostrap 3.0.0). | ||
| + | *Comprobaremos que también está jQuery. ¿Por qué? Echa un ojo al bower.json del componente Bootstrap: | ||
| + | <source lang="bash"> | ||
| + | { | ||
| + | "name": "bootstrap", | ||
| + | "version": "3.0.0", | ||
| + | "main": ["./dist/js/bootstrap.js", "./dist/css/bootstrap.css"], | ||
| + | "ignore": [ | ||
| + | "**/.*" | ||
| + | ], | ||
| + | "dependencies": { | ||
| + | "jquery": ">= 1.9.0" | ||
| + | } | ||
| + | } | ||
| + | </source> | ||
| + | *¿Se entiende la dinámica? Espero que sí :-) | ||
| − | |||
</div> | </div> | ||
| + | <div class="slide"> | ||
| + | ===Grunt=== | ||
| + | *Ya viene configurado para ejecutar ciertas tareas | ||
| + | *Ejecuta grunt para comprobarlo: | ||
| + | <source lang="bash"> | ||
| + | juanda@juandapc:~/bootstrap/bootstrap-theme-daw$ grunt | ||
| + | Running "copy:bootstrap" (copy) task | ||
| + | Copied 5 files | ||
| + | Running "less:compile" (less) task | ||
| + | File dist/css/bootstrap.css created. | ||
| − | + | Running "recess:dist" (recess) task | |
| − | + | File "dist/css/bootstrap.css" created. | |
| − | + | ||
| − | + | Running "cssmin:minify" (cssmin) task | |
| + | File dist/css/bootstrap.min.css created. | ||
| + | |||
| + | Running "assemble:pages" (assemble) task | ||
| + | Assembling index.html OK | ||
| + | Assembling examples/kitchen-sink.html OK | ||
| + | >> 2 pages assembled. | ||
| + | |||
| + | Running "clean:0" (clean) task | ||
| + | Cleaning tmp...OK | ||
| + | |||
| + | Done, without errors. | ||
| + | juanda@juandapc:~/bootstrap/bootstrap-theme-daw$ | ||
| + | |||
| + | </source> | ||
| + | *grunt serve es un comando que nos permitirá ver nuestro proyecto en la url: http://localhost:8000. | ||
| + | *Como puedes ver, ejecuta internamente también un grunt watch (vamos, que está controlando posibles cambios para trabajar). | ||
| + | |||
| + | <source lang="bash"> | ||
| + | juanda@juandapc:~/bootstrap/bootstrap-theme-daw$ grunt serve | ||
| + | Running "connect:serve" (connect) task | ||
| + | Started connect web server on localhost:8000. | ||
| + | |||
| + | Running "watch" task | ||
| + | Waiting... | ||
| + | |||
| + | </source> | ||
| + | |||
| + | *Modifica algún dato de los ficheros less para ver el resultado. | ||
| + | |||
| + | {{DGA tarea| | ||
| + | Title=Ejercicio| | ||
| + | Actualiza la versión de Boostrap a la actual para tu proyecto (3.1.1). | ||
| + | }} | ||
| + | </div> | ||
| + | |||
| + | |||
| + | </div> | ||
Última revisión de 09:16 26 feb 2014