Ayer contaba mi corta pero exitosa historia con postCSS. En el artículo comentaba que utilizo postCSS con Gulp. En este artículo voy a profundizar en como añadir postCSS a Gulp desde el principio hasta el final. Si ya has trabajado con Gulp seguramente todo esto te resultará familiar.
Soy usuario de OSX así voy a hacer todo tirando de iTerm2.
Creando el proyecto y su estructura
Voy a empezar creando el proyecto con todos sus directorios. Lo podéis hacer a manopla creando carpeta y archivos. Yo lo voy a hacer a lo viejuno(también es más rápido) tirando de cli.
Npm
Vamos a empezar a instalar todo lo necesario. Para aquellos que no tengan instalado Gulp, vamos a instalarlo de forma global, para ello vamos a escribir en el terminal
Ahora nos vamos a la carpeta que hemos creado y vamos a escribir lo siguiente
En el terminal nos va a ir saliendo una serie de campos que vamos a ir rellenando y que más tarde se verán reflejados en el package.json que nos ha creado el npm init
Ahora vamos a empezar a instalar dependencias. La primera de ellas Gulp
Escribiendo –save-dev agregará este paquete como un dependencia a nuestro proyecto, y también lo añadirá al package.json
Gulpfile
Ahora vamos a abrir Gulpfile.js con un IDE, en mi caso Sublime Text 3. Una vez abierto vamos a escribir lo siguiente
gulp-postcss
Ahora vamos a instalar gulp-postcss. Volvemos a nuestra ventana del terminal
Y en nuestro gulpfile.js añadimos lo siguiente
Vamos a instalar todos los paquetes que vamos a utilizar del tirón. Y luego lo vamos a añadir todo a nuestro gulpfile.js
Ahora vamos a volver a abrir nuestro gulpfile.js y vamos a ir añadiendo todos los paquetes que hemos instalado anteriormente. A algunos plugins les podemos pasar opciones, en este caso vamos configurar pxtorem, que el valor de root sea 16, que lo transforme solo con dos decimales, y que solo transforme de px a rem las propiedades: font-sizeline-heightpadding
Y ya por último vamos a instalar y activar los sourcemaps.
Vamos a nuestro gulpfile.js y vamos a añadir dos .pipe()
Comenzando a escribir
Ahora vamos al terminal y escribimos lo siguiente
Si esta todo bien nos debería de salir el siguiente mensaje en el terminal
Ahora vamos a nuestro styles.css y por fin empezamos a escribir líneas de CSS :d
Vamos a utilizar el plugin de las variables como SASS
Vamos a crear @alias con Rucksack. Uno para la propiedad background-color y otro para el box-sizing. Esta funcionalidad del plugin es difícil de utilizar para aquellos que somos adictos a emmet y todos sus shorthands.
Los valores de las siguientes propiedades serán transformados de pixel a REM.
Y ya por último vamos a anidar como SASS
IO
Ahora vamos a ver las diferencias entre lo que hemos escrito en nuestro src/css/styles.css y lo que ha generado postCSS en dist/css/styles.css
src/css/styles.css
dist/css/styles.css
Todo el código del artículo lo tenéis a vuestra disposición en GitHub