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
Gulp 芸
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yuki Ishikawa
October 28, 2015
Technology
0
50
Gulp 芸
Gotanda.js #1
https://gotandajs.connpass.com/event/20838/
Yuki Ishikawa
October 28, 2015
Tweet
Share
More Decks by Yuki Ishikawa
See All by Yuki Ishikawa
Snowflake Openflow さわってみた
hoto17296
0
410
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
1.1k
ORM と向き合う
hoto17296
14
11k
明日業務で役立たない Web 開発 TIPS
hoto17296
0
220
クソ bot 実装ライブコーディング
hoto17296
0
240
DeepGBM 論文の紹介
hoto17296
0
690
試行錯誤のための Docker 活用術
hoto17296
4
3.2k
Hive 集計テクニック
hoto17296
0
530
データ分析と Docker / Data Analysis with Docker
hoto17296
0
390
Other Decks in Technology
See All in Technology
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
150
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
プロポーザルに込める段取り八分
shoheimitani
1
230
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.7k
超初心者からでも大丈夫!オープンソース半導体の楽しみ方〜今こそ!オレオレチップをつくろう〜
keropiyo
0
110
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
640
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
130
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
900
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
Featured
See All Featured
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
120
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
120
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Designing for Performance
lara
610
70k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
140
The SEO identity crisis: Don't let AI make you average
varn
0
240
Exploring anti-patterns in Rails
aemeredith
2
250
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Transcript
HVMQܳ (PUBOEBKT !IPUP
None
+PJO4MBDL http://gotanda.js.org/
HVMQKT • λεΫϥϯφʔ • Node.js ͷ Stream API
HVMQKT TDTT DTT NJO H[ H[JQ TBTT NJOJGZ TSD EFTU
QJQF QJQF
;ͭ͏ͷ͍ํ • ES2015 / AltJS Λ ES5 ʹτϥϯεύΠϧ • JS
ͷ minify / bundle • Sass ΛίϯύΠϧ / minify / autoprefix • gzip ੜ • lint
;ͭ͏͡Όͳ͍͍ํ • ϒϩάͱͯ͠͏
!IPUP • ϒϩά৬ਓ • ͍··Ͱʹ 9 ճϒϩάΛ࡞Γͳ͓͍ͯ͠Δ • ͳ͓ɺϒϩάΛ࡞ͬͯຬͯ͠͠·ͬͯ ͋·ΓهࣄΛॻ͚͍ͯͳ͍༷
͍·ͷϒϩά • http://hotolab.net/ • ࠷ۙʮ jQuery ໓ͼΑʯͱ͔ݴͬͯΔͷʹ ϒϩάͷσβΠϯʹ jQuery Λ͍ͬͯΔ
• Jekyll + GitHub Pages • ϓϥάΠϯ͑ͳ͍ͷͰΧελϜͮ͠Β͍
࡞Γ͍ͨϒϩά ཁ݅ • ੩తͳϖʔδ܈ͱͯ͠ϏϧυͰ͖Δ • ಈతͳΞϓϦͷӡ༻͕͔͔ۚΔ • ੩తͳϖʔδͳΒແྉͰӡ༻Ͱ͖Δ • खܰʹॻ͚ͯखܰʹެ։Ͱ͖Δ
• Markdown Ͱॻ͚Δ • ॻ͖ͳ͕Β֬ೝͰ͖Δ
࡞Γ͍ͨϒϩά ཁ݅ • Jekyll ෩ʹهࣄʹϝλใΛઃఆͰ͖Δ • tag, description, og-image ͳͲ
• ύʔϚϦϯΫ͕͑Δ • http://hotolab.net/blog/{entry_title}
ʮͯͳϒϩάΛ͑ʯ • ՝ۚ͠ͳ͍ͱಠࣗυϝΠϯ͑ͳ͍ • ϒϩάʹ݄1000ԁͪΐͬͱΩπ͍ • ϙʔλϏϦςΟ͕ඍົ • Markdown ͷ··ΤΫεϙʔτͰ͖ͳ͍
HVMQͰCMPH͕࡞ΕΔͷ͔ • ڹ͖͕ࣅ͍ͯΔ͔Βଟ͍͚Δ
σΟϨΫτϦߏ src/ _posts/ ***.md _layouts/ assets/ index.html.jade public/ gulpfile.js
ͳʹͱ͋Ε.BSLEPXO • gulp-markdown gulp.src('./src/_posts/*.md') .pipe(markdown())
ύʔϚϦϯΫͬΆ͘͢Δ .pipe(rename((path) => { path.dirname += '/' + path.basename; path.basename
= 'index'; path.extname = 'html'; return path; })) • gulp-rename
ϨΠΞτʹຒΊࠐΉ .pipe(layout({ title: 'My New Blog!!!', layout: './src/_layout/default.jade' })) •
gulp-layout
ϝλใΛϨΠΞτʹ͢ gulp.src('./src/**/*.md') .pipe(frontMatter()) .pipe(markdown()) .pipe(layout(function(file) { return file.frontMatter; })) •
gulp-frontmatter
ࢀߟɿ+FLZMMͷϝλใຒΊࠐΈ ϝλใ ϚʔΫμϯ
֬ೝͰ͖ΔΑ͏ʹ͢Δ gulp.src('./public') .pipe(webserver({ livereload: true, ... })); • gulp-webserver
ެ։͢Δ (JU)VC1BHFT gulp.src('./public/**') .pipe(ghPages()); • gulp-gh-pages
ެ։͢Δ "NB[PO4 gulp.src('./public/**') .pipe(s3({ Bucket: "bucket-name", ... })); • gulp-s3-upload
ެ։͢Δ '51 gulp.src('./public/**') .pipe(ftp({ host: 'example.com', user: 'hoto', pass: '1234'
})); • gulp-ftp
4/4Ͱ֦ࢄ͢Δ var oauth = { consumerKey: '...', ... }; gulp.src('package.json')
.pipe(twitter(oauth, 'ϒϩάߋ৽!!!')); • gulp-twitter
ͦͷଞ • gulp-favicons: favicon ͳͲΛ·ͱΊͯੜ • gulp-fontmin: ϑΥϯτͷαϒηοτΛ࡞ • gulp-robots:
robots.txt Λੜ • gulp-email: ϝʔϧΛૹΔ
%&.0
͔ͨͬͨ͠ ʅŋ@ŋA
·ͱΊ • ϒϩά gulp Ͱ࡞ΕΔʂʂʂ
&OKPZ