Giter Site home page Giter Site logo

shrinkmyjs's Introduction

shrinkMyJS!

INTRODUCCIÓN

Esta librearía la desarrolle por la necesidad de tener un compilador rápido para archivos fuera de los proyectos. Inicialmente fue desarrollada para el trabajo, pero decidí publicarla para que sea usada por quienes tenga la necesidad. Existen muchas herramientas similares esta solamente es una utileria mas.

Antes de iniciar con el proceso de compilado es necesario instalar una serie de librerías para poder generar el compilado de los archivos javascript. Para ello, es necesario la instalación de la herramienta principal, llamada NodeJS. También es requiero el archivo package.json, que contiene la información de las librerías que se requiere instalar.

INSTALACIÓN DE NODEJS

NodeJS es un marco de trabajo para construir aplicaciones web. Utiliza el mismo motor de Javascript que se encuentra en el navegador Chrome. Para instalar NodeJS es necesario ingresar a la pagina de la herramienta y descargar el instalador. La pagina detectará el sistema operativo y mostrará el link de descarga del instalador. La pagina de NodeJS es la siguiente: http://nodejs.org

ADMINISTRADOR DE PAQUETES DE NODEJS (NPM)

La instalación de NodeJS incluye por default el administrador de paquetes llamado NPM (Node Package Manager). Este administrador es necesario para instalar liberarías compatibles con NodeJs.

GRUNT.JS

GruntJS es una herramienta que automatiza procesos como el copiado, concatenación y minificado de código. Esta herramienta será la responsable de procesar nuestro código y generar un compilado listo para ser usado en producción.

ARCHIVO DE CONFIGURACIÓN

Existe un archivo de configuración llamado Grunfile.js, que contiene todas las rutinas que se requieren para poder procesar nuestros archivos Javascript. Este archivo contiene configuraciones que son importantes señalar. El archivo Gruntfile.js, es un archivo de texto que contiene directivas de configuración que son necesarias para ejecutar los procesos de compilado.

ARCHIVO DE INSTALACIÓN

El archivo de configuración llamado package.json (Ver Imagen 3), contiene toda la información necesaria para instalar las librerías que se requieren en el proceso de compilado.

INSTALACIÓN DE AMBIENTE

Dentro de nuestro proyecto, existen dos archivos, los cuales son responsables de la configuración y ejecución del proyecto.

Para poder instalar el ambiente es necesario abrir la consola como administrador y ejecutar el siguiente comando: sudo npm install

El comando anterior iniciará la instalación de las herramientas necesarias para poder concatenar y minificar los archivos javascript que se encuentran dentro de la carpeta llamada sources.

CONCATENACIÓN Y MINIFICACIÓN DE ARCHIVOS

Para poder procesar los archivos, es necesario abrir la terminal y ubicarse dentro de la carpeta del proyecto, como se muestra en la Imagen 5. Desde allí se podrán procesar los archivos que se encuentran dentro de la carpeta sources.

Existe dos procesos principales que se deberán ejecutar según las necesidades del desarrollador, los cuales serán explicados en los aparados siguientes.

Minificación de archivos sin precedencia

Cuando se requiera procesar uno o mas archivos los cuales no tienen precedencia entre ellos, es decir, que ningún archivo dependa de algún otro, se puede ejecutar el proceso que es descrito a continuación.

  • Incluir los archivos dentro de la carpeta sources que se encuentra en el directorio de la herramienta.
  • Ubicarse en el directorio, como se muestra en la sección anterior.
  • Ejecutar el siguiente comando: grunt unsorted.
  • El código procesado se encuentra dentro de la carpeta unsorted, con el nombre compiled.min.js.

Minificación de archivos con precedencia

Cuando se requiera procesar uno o mas archivos los cuales tengan precedencia entre ellos, se puede ejecutar el proceso que es descrito a continuación.

  • Incluir los archivos dentro de la carpeta sources que se encuentra en el directorio de la herramienta.
  • Editar el archivo Gruntfile.js, iniciando en la línea 40. Se deberá poner en orden de precedencia los archivos que se requieren compilar, como se muestra en la Imagen 7. En la ilustración se indica que el archivo GlobalFunctions.js se deberá incluir y procesar antes que el archivo BanorteWebNavigationEngine.js, y este, se deberá procesar antes que los archivos siguientes.
  • Ubicarse en el directorio, como se muestra en la sección anterior.
  • Ejecutar el siguiente comando: grunt sorted
  • El código procesado se encuentra dentro de la carpeta sorted, con el nombre compiled.min.js.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.