Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Intro to Grunt.js (Norwegian)
Search
Hans Kristian Flaatten
January 12, 2015
Technology
46
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Intro to Grunt.js (Norwegian)
Introduction to Grunt.js build manager.
Hans Kristian Flaatten
January 12, 2015
More Decks by Hans Kristian Flaatten
See All by Hans Kristian Flaatten
Continuous Deployment with Jenkins Pipelines
starefossen
0
63
Continuous Integrations with Jenkins
starefossen
0
72
Testing Node.js
starefossen
0
35
What is Node.js?
starefossen
0
47
LeftPad Not Found
starefossen
0
91
Whats New In EcmaScript 2015 / ES6
starefossen
0
78
Experience with NoSQL at the Norwegian Trekking Asocciation
starefossen
0
55
Introduction to Geospatial Queries in MongoDB
starefossen
0
42
Åpen Tur- og Friluftsdata
starefossen
0
110
Other Decks in Technology
See All in Technology
行動するAIのためのオントロジー | DevRev — Encraft #26.pdf
dvrv_tknrszk
2
670
2026-09-26 Platform Engineering Kaigi 2026 インフラとアプリの境界線と委譲の設計 / Drawing the Infra and App Line
masasuzu
0
570
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
350
VS Code × GitHub Copilot での Fabric 開発
ryomaru0825
1
210
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
210
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
1
180
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
510
企業の現実世界をグラフで写し取る
sansantech
PRO
0
240
形式手法を使って仕様をコーディングしよう
mikanichinose
0
160
サーバーフルコンピューティング?AWS Lambda
iwatatomoya
0
130
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
250
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
300
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Code Review Best Practice
trishagee
74
20k
Designing for humans not robots
tammielis
254
26k
The browser strikes back
jonoalderson
0
1.7k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
900
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
340
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
430
Optimizing for Happiness
mojombo
378
71k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
500
Fireside Chat
paigeccino
43
4k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Transcript
Hans Kristian Flaatten – @starefossen
None
HVA ER GRUNT? • Enkel automatisering av oppgaver • Sammenslåing
og komprimering • Testing og linting • Kompilering osv. • Skrevet i v8 JavaScript (aka. Node.JS)
HVORFOR GRUNT? • Stabilt og veletablert • Enkelt å sette
opp – enkelt å kjøre • Rikt økosystem med «støtte for det meste»
None
INSTALLER $ npm install grunt grunt-cli $ npm install grunt-contrib-jshint
$ npm install grunt-contrib-foo
KONFIGURER module.exports = function(grunt) { ! // Project configuration. grunt.initConfig({
jshit: { options: { curly: true, eqeqeq: true, eqnull: true, }, files: [ 'Gruntfile.js', 'src/**/*.js', ] } }); ! // Load the plugin that provides the "jshint" task. grunt.loadNpmTasks('grunt-contrib-jshint'); ! // Default task(s). grunt.registerTask('default', ['jshint']); ! };
PROFIT $ grunt jshint > Running "jshint:files" (jshint) task app.js
6 | process(card) ^ Missing semicolon.
LESS less: { compile: { options: { modifyVars: { imgPath:
'"https://aws-s3..."' } }, ! files: { "less/app.less": "css/app.css" } } }
FILE WATCHER watch: { js: { files: ['js/**/*.js'], tasks: ['compile:js']
}, less: { files: ['less/**/*.less'], tasks: ['compile:less'] } }
DEMO
OG MANGE FLER... • grunt-contrib-imagemin • grunt-contrib-cssmin • grunt-contrib-csslint •
grunt-contrib-concat • grunt-s3 • grunt-pylint • grunt-ssh-deploy • gruntjs.com/plugins
ALTERNATIVER Gulp Yeoman Broccoli.js
None
Never gonna give you up Never gonna let you down
Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you