Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Modern Development Workflow with Grunt
Search
t32k
November 30, 2013
Design
37k
22
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Modern Development Workflow with Grunt
http://t32k.me/mol/log/modern-development-workflow-with-grunt/
t32k
November 30, 2013
More Decks by t32k
See All by t32k
なぜプレイドにデザインエンジニアが必要だったのか?
t32k
0
3.7k
スタンドアロンAMPのすゝめ
t32k
3
13k
Evaluating your stylesheets
t32k
0
870
Evaluating CSS
t32k
10
2.3k
WebPagetest in 5 minutes
t32k
12
2.7k
Introduction to Sass Compass for Sencha Touch
t32k
6
2k
var Gurator = Gist + Curator;
t32k
0
440
Sublime Text and Grunt for Titanium Development
t32k
5
3.4k
3 secrets for optimizing Web application
t32k
6
250
Other Decks in Design
See All in Design
工房としてのAI ── デザイナー、作家、ビルダー
hiranotomoki
0
390
「バイブコーディングって何?」から始まった、 AIとの一年間と、その先のこと
seto
0
1.1k
もう迷わない!“なんとなく”を卒業するフォントの選び方【村田俊英】
toshihidemurata
0
810
「親切なオンボーディング」 が招く罠 ー AI時代のUXデザイン
godlingkogami
1
150
“なんとなくFigma”から一歩先へ。AI時代も活きるWeb制作フロー
ayumidesign
0
160
AIスライドデザインを生成する仕組みを社内共有する
kenichiota0711
7
5.9k
Техники структурирования беседы с собой, заказчиком и командо
ashapiro
0
240
Build for the Web, Build on the Web, Build With the Web
csswizardry
0
500
Where Imagination Ends AI Begins
r5ni4
0
290
hicard_credential_202601
hicard
0
270
ボタンUIの冪等性の話をしたらVimmerに刺さっちゃった
ottatto
3
1.7k
Design dependencies
teba_eleven
0
150
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Faster Mobile Websites
deanohume
310
32k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
Producing Creativity
orderedlist
PRO
348
40k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
400
Believing is Seeing
oripsolob
1
180
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
480
Music & Morning Musume
bryan
47
7.3k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Transcript
Modern Development Workflow with Grunt HTML5 Conference JP 2013 Koji
Ishimoto
@t32k
None
- Why use Grunt? - How to use Grunt -
Customize your Gruntfile! Agenda
Target HTML Corder Web Designer or
Why use Grunt?
The JavaScript Task Runner Linting Compiling Minification Testing Conversion Documentation
Deployment
None
Complexity
GUI Apps
None
Paid Apps
$$$
Web Performance
2007
None
14 Rules for Faster-Loading Web Sites
2013
#perfmatters
Network Render Compute
)5.-ΧϯϑΝϨϯεɺϧʔϜ"ɺ ʰ8FCϑϩϯτΤϯυͷϨϯμϦϯάύϑΥʔϚϯεͱ࠷దԽ5JQTʱ
How to use Grunt
Install
None
$ npm install grunt-cli -g
Structure
Package.json Gruntfile.js .js or .coffee
None
None
Package.json
$ npm init
{ "name": "grunt-demo", "version": "0.0.1", "description": "This is demo.", "main":
"Gruntfile.js", "scripts": { "test": "grunt test" }, "author": "Koji Ishimoto", "license": "BSD-2-Clause" }
$ npm install grunt --save-dev $ npm install grunt-csso --save-dev
{ "name": "grunt-demo", "version": "0.0.1", "description": "This is demo.", "main":
"Gruntfile.js", "scripts": { "test": "grunt test" }, "author": "Koji Ishimoto", "license": "BSD-2-Clause", "devDependencies": { "grunt": "~0.4.2", "grunt-csso": "~0.5.2" } }
Package.json $ npm install A B
Gruntfile.js
$ npm install grunt-init -g $ git clone https://github.com/ gruntjs/grunt-init-gruntfile.git
~/.grunt-init/gruntfile $ grunt-init gruntfile
module.exports = function(grunt) { // Project configuration. grunt.initConfig({ // Task
configuration. csso: { files: { 'output.css': ['input.css'] } } }); // These plugins provide necessary tasks. grunt.loadNpmTasks('grunt-csso'); // Default task. grunt.registerTask('default', ['csso']); };
None
Load the task:
grunt.loadNpmTasks('grunt-csso');
Configure the task:
grunt.initConfig({ csso: { dist: { files: { 'output.css': ['input.css'] }
} } });
Register the task:
grunt.registerTask('default', [‘csso’]);
$ grunt csso
Customize your Gruntfile!
None
grunt-contrib-***
None
$ npm install grunt-init -g $ git clone https://github.com/ gruntjs/grunt-init-gruntplugin.git
~/.grunt-init/gruntplugin $ grunt-init gruntplugin
Maple Realistic preprocessors-based CSS framework for mobile.
None
95,000byte 100,000byte 105,000byte 110,000byte 115,000byte 120,000byte Byte 270 1 135
67 202 Deploy times CSS file size as deploy
grunt stylesheet ['sass', 'autoprefixer', 'csscomb', 'csslint']
grunt typeset ['webfont', 'stylesheet']
grunt publish ['stylesheet', 'kss']
grunt build ['stylesheet', 'csso', 'imageoptim']
Jet Start
None
None
$ npm install yo -g $ npm install generator-maple -g
$ mkdir your_proj && cd $_ $ yo maple $ grunt
- Automation - Customization - Start of Terminal Summary
Thanks! t32k @t32k koji.ishimoto
- flickr.com/photos/bitterjug/7670055210 - flickr.com/photos/epsos/8474532085 - flickr.com/photos/viernest/3380560365 - flickr.com/photos/81583603@N00/4099146279 - flickr.com/photos/peasap/2261077597
- flickr.com/photos/epsos/8097327748 Photo Credits