Minificador de JS/probador de unidades/constructor

Buscando un generador JS de Windows (o multiplataforma) que

  • minifica,
  • ejecuta pruebas unitarias
  • ejecuta jshint/jslint
  • se puede comparar con una guía de estilo de codificación
  • puede descargar fuentes externas
  • puede combinar varios archivos JS en un archivo combinado minificado y ajustar las referencias para que apunten al archivo minificado.

GUI o CLI bien. Supongo que la mayoría de esas funciones deberían recibir sugerencias en algún archivo de creación como entrada. Se prefiere el código abierto, pero ciertamente no es obligatorio.

Las extensiones Maven Javascript pueden hacer todo esto, pero lamentablemente no se han mantenido por un tiempo y pueden ser una curva de aprendizaje un poco empinada.
grunt se usa a menudo para estas tareas. Sin embargo, no conozco un buen paquete que haga todo listo para usar.
el gruñido se ve genial; siéntase libre de hacerlo como respuesta. Realmente no me importa tener que configurar; sí, eso es más difícil para algunos, pero me imagino que si puedo escribir una aplicación html/php/ajax/jQuery, debería poder configurar una herramienta para ahorrarme trabajo.
A partir de votar esto como "principalmente basado en la opinión", esa es la característica de las recomendaciones. Casi siempre las recomendaciones se basan en opiniones. Con los requisitos enumerados en esta pregunta, es fácil recomendar una buena herramienta para la tarea.
Como nadie ha respondido, supongo que tendré que corregir una para que no reduzca nuestro porcentaje de respuesta ...
¿Alguien ha probado Rush y Rushstack de Microsoft? Parece que podría ser relevante, y ya lleva algunos meses a la vista.
¿Has considerado reemplazar el viejo jshint con babel+prettier? O simplemente babel (con reglas modificadas puede hacer el 90% de lo que hace más bonito).

Respuestas (1)

Grunt es un sistema de construcción altamente configurable. Se ejecuta a través de Node.js y tiene una multitud de complementos disponibles para realizar muchas tareas específicas. Las tareas individuales son altamente configurables y escribir nuevas tareas también es bastante fácil.

Para repasar los requisitos:

  • minifies: Sí para JavaScript a través de uglify oficial , para imágenes a través de imagemin oficial, para CSS a través de CSSMin oficial y para HTML también tiene un complemento de minificador oficial .
  • ejecuta pruebas unitarias: Sí, varios marcos de pruebas unitarias diferentes tienen complementos gruñidos: dos populares y compatibles oficialmente son NodeUnit y QUnit
  • ejecuta jshint/jslint: Sí, hay un complemento de integración jshint oficial .
  • se puede comparar con una guía de estilo de codificación: Sí, a través de jscs es muy fácil y ese complemento también incluye una tonelada de ajustes preestablecidos, por lo que es realmente genial.
  • puede descargar fuentes externas: si está configurado correctamente, puede hacerlo, aunque no terminé necesitando esto.
  • puede combinar varios archivos JS en un archivo combinado minificado y ajustar los enlaces de html para hacer referencia solo a ese archivo: el complemento oficial de Concat hará esto si se configura correctamente o vea también el complemento UseMin .