tag riot build coffeescript less

build - riot - ¿Sistema de compilación que integra coffeescript, LESS(etc) desarrollo web?



riot js (6)

Para los proyectos de hobby estoy trabajando en este momento, incluidos los idiomas que luego se transcriben, como Coffeescript a Javascript, MENOS a CSS, etc. He estado organizando y manteniendo el código a través de scripts de shell.

Esto es perfectamente factible, pero a veces creo que un sistema de construcción dedicado sería más adecuado. Las tareas típicas implicarían transpilar los archivos, eliminar versiones no miniaturizadas, buscar bibliotecas externas más nuevas, etc.

¿Hay algún sistema de compilación que combine todas estas funciones?

EDITAR:

Muchas gracias por las respuestas. La suerte puede tenerlo, encontré esta herramienta hoy y decidí probarla : http://brunch.io/ Aún así, he aceptado la respuesta más cerca de lo que tenía en mente.

Antes de Brunch, también estaba considerando SCons, ya que es lo suficientemente simple para proyectos web y podría aprovechar el conocimiento con otros proyectos (en C, python, Java, etc.)


La práctica más común para el proyecto CoffeeScript es utilizar el propio pastel de CoffeeScript. Coloca un Cakefile en la raíz de su repositorio y crea tareas que realizan sus pasos de compilación. Puede llamar a less.js y a café para cumplir directamente con sus tareas.

Utilizo un par de herramientas: browserify y uglifyJS en mis tareas de CakeFile para crear un paquete completo para el navegador. Es un archivo Cake bastante complicado, pero busca la tarea de creación para tener una idea de cómo puedes utilizar estas herramientas juntas.

Tenga en cuenta que ese ejemplo no incluye css en el paquete final, que es solo javascript. Aquí hay un ejemplo de un Cakefile que he escrito que inserta javascript directamente en el html . Usted podría hacer lo mismo con CSS. Lo bueno de Cakefile es que mantiene los activos separados durante el desarrollo y luego los envuelve juntos solo cuando estás listo para implementar. Dicho esto, si puede salirse con la suya manteniéndolos separados, es preferible tanto para el almacenamiento en caché como para el desarrollo. La única razón por la que los envuelvo en este ejemplo es porque el paquete final debe ejecutarse en otro entorno sin acceso a sitios cruzados.


Personalmente he estado usando una combinación de RubyGems para esta tarea, principalmente:

  • Guardia
  • Piñones
  • engranajes de protección

Guard es una joya que escuchará los cambios de archivos y luego podrá hacer ''algo'' con esos archivos modificados.

Piñones se utiliza en Ruby on Rails para su cartera de activos. En términos simples, traduce / convierte CoffeeScript, LESS, SASS, JS Templates, casi cualquier cosa que necesite conversión y tiene un RubyGem para la conversión.

La gema guard-piñones es el pegamento entre los dos, ''invocará'' piñones para construir mis archivos cada vez que cambie uno de los archivos fuente.

Si está familiarizado con Ruby, RubyGems y Bundler, puede echar un vistazo a una Plantilla de proyecto que creé usando estos tres RubyGems. Definitivamente no es perfecto, pero funciona para mí en este momento y podría ayudarlo a comenzar.

https://github.com/spadin/frontend-project-template


Si está desarrollando proyectos para un marco web como Rails, entonces debe configurar el marco web para compilar CoffeeScript y LESS a medida que se publican.

Si está desarrollando sitios "estáticos" sin back-end, le sugiero que:

  1. Use una herramienta como LiveReload (solo Mac), o
  2. Use un generador de sitios estáticos como Middleman

Uso Mindscape Workbench con Visual Studio 2010, es fantástico.

Desde el sitio:

  1. Súper fácil de usar

    Instala la extensión y listo. No es necesario configurar eventos de compilación posteriores o generadores de resultados. Guarde los archivos y generarán los archivos CSS o JS asociados según sea necesario. ¡Fácil!

  2. Resaltado de sintaxis

    Al extender Visual Studio, Web Workbench le brindará resaltado de sintaxis de Sass, Less y Coffee Script. Una excelente forma de ayudarlo a aprender la sintaxis y comprender mejor el código que está escribiendo.

  3. Intellisense

    Visual Studio ofrece fantástica inteligencia para los desarrolladores y hemos trabajado duro para llevar intellisense a los archivos Sass y Less cuando estás editando.

  4. Gratis para usar

    Le invitamos a utilizar este software de forma gratuita y, si lo desea, ¡puede pasar a la edición Pro por $ 39!

  5. Usa solo los bits que quieras

    No tiene que usar los tres idiomas compatibles. Si solo quieres Coffee Script, o solo quieres usar Less, entonces por supuesto simplemente usa esas partes. Todo está en una sola instalación, pero no hay confianza en sus aplicaciones.


Otra opción que debes considerar es CoffeeToaster:
http://github.com/serpentem/coffee-toaster

Viene con un sistema de empaquetado que cuando esté habilitado usará la jerarquía de su carpeta como declaraciones de espacios de nombres para sus clases si así lo desea, entonces puede extender clases desde múltiples archivos, importar y sonar, por ejemplo:

#<< another/package/myclass class SomeClass extends another.package.MyClass

La configuración de compilación es extremadamente minimalista y simple, hecha para ser obvia:

# => SRC FOLDER toast ''src_folder'' # => VENDORS (optional) # vendors: [''vendors/x.js'', ''vendors/y.js'', ... ] # => OPTIONS (optional, default values listed) # bare: false # packaging: true # expose: '''' # minify: false # => HTTPFOLDER (optional), RELEASE / DEBUG (required) httpfolder: ''js'' release: ''www/js/app.js'' debug: ''www/js/app-debug.js''

También hay una opción de depuración que compila los archivos individualmente para facilitar los procesos de depuración y otras funciones útiles.

Echa un vistazo, tal vez te guste.