Grunt ist ein Tool, mit welchem sich wiederkehrende Aufgaben im Frontend automatisieren lassen. Das ganze basiert auf einem Ökosystem an Plugins, welche in einem Gruntfile.js konfiguriert und so an das jeweilige Projekt angepasst werden können.
Zu diesem Blogpost gibt es ein Grunt Beispielprojekt auf GitHub, welches die nachfolgend beschriebenen Features abdeckt:
- LESS zu CSS kompilieren: Less Plugin
- Automatische CSS Vendor Prefixes: Autoprefixer Plugin
- Minifizierung von CSS Files: CSS Min Plugin
- Javascript Validierung: JS Hint Plugin
- Minifizierung von Javascript Files: Uglify Plugin
- Buildprozess starten, sobald sich ein File ändert: Watch Plugin
Zudem werden CSS und Javascript Sourcemaps unterstützt sowie Live Reloading im Browser.