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
Gulp 芸
Search
Yuki Ishikawa
October 28, 2015
Technology
60
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Gulp 芸
Gotanda.js #1
https://gotandajs.connpass.com/event/20838/
Yuki Ishikawa
October 28, 2015
More Decks by Yuki Ishikawa
See All by Yuki Ishikawa
分割40%キーボードにスムーズに入門するには
hoto17296
1
240
FastAPI の並行処理モデルを完全に理解する
hoto17296
9
3.9k
o11y 何もわからない助けてくれ
hoto17296
0
95
Snowflake Openflow さわってみた
hoto17296
0
680
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
1.5k
ORM と向き合う
hoto17296
14
12k
明日業務で役立たない Web 開発 TIPS
hoto17296
0
270
クソ bot 実装ライブコーディング
hoto17296
0
280
DeepGBM 論文の紹介
hoto17296
0
740
Other Decks in Technology
See All in Technology
HRC_Frontend_Conference_Fukuoka_2026.pdf
ts020
0
680
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
120
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
310
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
840
Genieを崇めよ
kameitomohiro
0
120
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
0
1.7k
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
750
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
160
生成AIエージェントを用いた、 手動テスト手順書から自動テストへの 変換手法の検討
magicpod
0
150
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
2
1.6k
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
1.5k
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
1
1.3k
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
Documentation Writing (for coders)
carmenintech
77
5.5k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
380
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
320
Design in an AI World
tapps
1
310
Typedesign – Prime Four
hannesfritz
42
3.2k
The Pragmatic Product Professional
lauravandoore
37
7.4k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
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