Grunt este unul din build-tools ce au prins foarte bine în ultimii doi ani. Sigur, după el au mai apărut câteva (Gulp și încă vreo două al căror nume în scapă), dar a avut avantajul că timp de un an s-au dezvoltat plugin-uri doar pentru el.
Configurarea este rezonabil de ușoară iar task-uri sunt pentru… orice. De la minify până la deploy.
Acestea fiind spuse, ce plugin-uri folosiți constant?
@danstefancu: De regulă încerc să scriu JS independent unul de altul, astfel încât ordinea să nu conteze. Sau dacă există dependențe, se face inițializarea la sfârșit.
Dar dacă este musai nevoie de o anume ordine, pot specifica în assets.json:
Asta îmi va genera un in_ordine.min.js și in_ordine.dev.js respectiv in_dezordine.min.js și in_dezordine.dev.js.
@Catalin_Banu: pentru generarea de sprites. Pentru că nu tot timpul pot folosi svg sau font-icons. Partea bună este că îl folosesc destul de rar (cam unul din trei-patru proiecte are nevoie de sprites).
Am ajustat un pic Gruntfile și modul în care sunt folosite chestiile:
Am spart fișierul în mai multe module ce-mi generează config pentru fiecare task în parte
am adăuagt test runnere pentru jasmine și karma+jasmine (config-ul de karma funcționează independent de grunt dar și din grunt)
într-un fel sau altul am reușit să scad timpii de execuție (nu sunt foarte sigur însă cum). Dacă la un proiect măricel dura ~9 secunde până se executau toate task-urile, am reușit să scad acest timp la sub 3 secunde. Watch a scăzut și el de la ~3 secunde la mai puțin de o secundă. Satisfăcător, zic eu
(toată povestea asta e gândită să fie folosită în combinație cu grunt-init ntz-wp, de aceea apar ciudățenii de genul {%= name %})