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
Developing static sites with Ruby
Search
Masafumi Okura
December 06, 2025
Programming
460
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Developing static sites with Ruby
https://regional.rubykaigi.org/hokuriku01/
Masafumi Okura
December 06, 2025
More Decks by Masafumi Okura
See All by Masafumi Okura
Ruby for complete beginners
okuramasafumi
0
36
Conference as a communication hub for all of us
okuramasafumi
0
84
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
180
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
420
Reading Rails 1.0 Source Code
okuramasafumi
0
390
RDoc meets YARD
okuramasafumi
4
290
Why doesn't Ruby have Boolean class?
okuramasafumi
0
78
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
120
Writing documentation can be fun with plugin system
okuramasafumi
0
290
Other Decks in Programming
See All in Programming
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
5
1.8k
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.2k
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
120
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
170
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
580
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
530
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
270
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
570
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
110
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
460
承認済みなのに差戻しできてしまうバグ、型で潰せます
shinchit
0
120
Hono + Inertia + React で LP を構築した話
oukayuka
2
180
Featured
See All Featured
The browser strikes back
jonoalderson
0
1.6k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
What's in a price? How to price your products and services
michaelherold
247
13k
The Language of Interfaces
destraynor
162
27k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
GraphQLとの向き合い方2022年版
quramy
50
15k
So, you think you're a good person
axbom
PRO
2
2.1k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
RubyͰ࡞Δ੩తαΠτ Rubyձٞ01 OKURA Masafumi, 2025-12-06
self.introduce • ໊લɿ͓͓͘Β·͞;Έʢେխ࢙ʣ • ॴଐɿϑϦʔϥϯε • ׆ಈɿKaigi on RailsνʔϑΦʔΨφΠβʔɺOSSʢAlbaͳͲʣɺ֤छ ొஃɺϙουΩϟετʢOH!
MY RUBYISTSʣ
None
None
͓͠ͳ͕͖ 1. ੩తαΠτͱɺͳͥඞཁͳͷ͔ 2. RubyΤίγεςϜʹ͓͚Δ੩తαΠτδΣωϨʔλʔʢSSGʣͷൺ ֱ 3. ͳͥRubyͳͷ͔
1. ੩తαΠτͱɺ ͳͥඞཁͳͷ͔
੩తαΠτ
None
HTML CSS JavaScript
αʔόʔ͕ͳ͍ ຊདྷαʔόʔϨεͬͯͬͪ͜ʹ͏͖୯ޠͩͬͨΑͶ…
ੈେ ੩తαΠτ࣌ ʂʂʂʂʂ [ཁग़య]
Digital Garden
Digital GardenͱʁʢࢲͳΓͷཧղʣ • ݫີͳఆٛͳ͍Β͍͠ • ϓϨʔϯςΩετʢMarkdownؚΉʣΛΉ • SaaSΑΓϩʔΧϧΛΉ • ࣌ܥྻͷฒͼΛ·ͳ͍ʢϒϩάͱͷࠩҟʣ
• ΞϯνϏοάςοΫ
Digital GardenΛ ڞ༗͍ͨ͠ͱ͖ɺ
੩తαΠτʂ
੩తαΠτͰेͦ͏ͳͷͨͪ • ݸਓαΠτʢϦϯΫूͱͪΐͬͱͨ͠ίϯςϯπʣ • https://okuramasafumi.com • ΠϕϯταΠτʢΧϯϑΝϨϯεͳͲʣ • https://kaigionrails.org/2025 •
اۀαΠτʢখنͳͷʣ
੩తαΠτʂʂ
…ͦͦɺ
ຊʹͦΕඞཁʁ • ΄͍͠ͷͪΐͬͱͨ͠σʔλͰखॻ͖ͷYAMLͰेͰʁ • σʔλϕʔε͍Δʁཧ͢Δʁ • ಈతͳϩδοΫຊʹඞཁʁ੬ऑੑରԠͰ͖Δʁ • Ϗϧυ࣌ʹશ෦ܾΊΒΕͨΒɺ͋ͱGitHub PagesͰແྉɻ
• SPAͰ͋Δඞཁ͋Δʁ • ͳ͍ɺੈͷதSPA͕աద༻͞Εͯ͠·͍ͬͯΔ͠ΈΜͳ֮ࣗͯ͠ͳ͍
ຊʹඞཁͳͷ • ϨΠΞτ • HTMLʹมͰ͖ΔͷʢMarkdownLiquidͳͲʣ • ͪΐͬͱͨ͠ϩδοΫ • ͋Δσʔλιʔε͔ΒෳϖʔδΛੜ͢ΔͳͲ •
গ͠ͷJavaScript • Ϗϧυπʔϧ
੩తαΠτʂʂʂ
2.RubyΤίγεςϜ ʹ͓͚Δ੩తαΠτ δΣωϨʔλʔͷൺֱ
੩తαΠτ δΣωϨʔλʔ
Static Site Generator
͓͓͘Β͕ͬͨ͜ͱͷ͋ΔSSG • Jekyll • Middleman • Nanoc • Bridgetown
Jekyll • ݹࢀʢ2008ʣͷSSGɺGitHub PagesͷσϑΥϧτ • μϯϩʔυ͕ಥग़ʢ3000ສʣɺϓϥάΠϯඇৗʹ๛ • ϒϩάͱͷ૬ੑ͕ྑ͍Β͍͠ • 2025࣌Ͱϝϯςφϯεܧଓத
• εϖϧ͕֮͑ΒΕͳ͍
middleman • ݹࢀʢJekyllͱ΄΅ಉ࣌ظʣͷSSG • RailsʹدͤͨAPIʢlink_toͳͲʣ͕ಛ • μϯϩʔυ600ສɺϓϥάΠϯͷଟ͘ͳ͍ • Kaigi on
RailsͷαΠτߏஙʹར༻ʢʙ2023ʣ • 2025࣌Ͱϝϯςφϯεܧଓத
Nanoc • ࣮࠷ݹࢀͷSSGʢ2007ʹόʔδϣϯ1ʣ • μϯϩʔυ͕গͳ͘ʢ100ສʣɺར༻ྫগͳ͍ • ґଘ͕ؔগͳ͘ɺػೳతʹܰྔͰγϯϓϧ • ͓͓͘ΒͷݸਓαΠτ͜ΕͰߏங͞Ε͍ͯΔ •
2025࣌Ͱϝϯςφϯεܧଓத
Bridgetown • 2020ʹొͨ͠ظͷ৽ɺSSG݉ϑϧελοΫϑϨʔϜϫʔΫΛ ᨳ͏ • μϯϩʔυ30ສҎԼɺϓϥάΠϯগͳ͍ • RodaesbuildΛར༻͍ͯ͠Δͷ͕ಛత • Kaigi
on RailsͷαΠτߏஙʹར༻ʢ2024ʙʣ • 2025࣌Ͱϝϯςφϯεܧଓதʢόʔδϣϯ2͕ϦϦʔεʣ
తผྨ • ͱʹ͔ͬ͘͘͞ͱαΠτΛ࡞Γ͍ͨɺϖϥΠνʹ͍ۙ -> Nanoc • GitHub PagesͰ͍͍ͨ -> Jekyll
• Railsͷײ֮Ͱ։ൃ͍ͨ͠ -> Middleman • ৽͍͜͠ͱΛࢼ͍ͨ͠ -> Bridgetown
None
׆ൃͳ։ൃ ଟ༷ͳબࢶ
RubyͬΆ͍ʂ
3. ͳͥRubyͳͷ͔
ຊʹඞཁͳͷʢ࠶ܝʣ • ϨΠΞτ • HTMLʹมͰ͖ΔͷʢMarkdownLiquidͳͲʣ • ͪΐͬͱͨ͠ϩδοΫ • ͋Δσʔλιʔε͔ΒෳϖʔδΛੜ͢ΔͳͲ •
গ͠ͷJavaScript • Ϗϧυπʔϧ
ຊʹඞཁͳͷʢ࠶ܝʣ • ϨΠΞτ • HTMLʹมͰ͖ΔͷʢMarkdownLiquidͳͲʣ • ͪΐͬͱͨ͠ϩδοΫ • ͋Δσʔλιʔε͔ΒෳϖʔδΛੜ͢ΔͳͲ •
গ͠ͷJavaScript • Ϗϧυπʔϧ
ͪΐͬͱͨ͠ ϩδοΫ
…Λॻ͘ݴޠ
εΫϦϓτݴޠ
Ruby
None
None
Γ͍ͨΑ͏ʹ ΕΔʂ
ʮ͜ͷαΠτϏϧμɺ ͜ͷػೳ͕ͳ͍ͷ ͭΒ͍ͳ͋…ʯ
ʮͦΕɺSSGͳΒ Ͱ͖ΔΑʯ
ͱ͜ΖͰɿ ϗεςΟϯάʹ ͍ͭͯ
લఏ݅ • ϩʔΧϧͰϏϧυ͢ΔͱՌશʹ੩తʹͰ͖Δ • S3ʹஔ͘͜ͱ͢ΒͰ͖Δ • `git push`ͷΈͰϏϧυΛؚΊͨσϓϩΠΛ͍݁ͤͨ͞߹ɺϗε ςΟϯάαʔϏεଆʹRubyͷ࣮ߦڥ͕ඞཁ •
جຊతʹશ෦ແྉͰ͍͚Δͣ
͓͓͘Β͕ͬͨ͜ͱ͕͋Δͷʢશͯແྉʣ • GitHub Pages • మ൘ɺͨͩ͠एׯบ͕͋ΓɺͰ͖ͳ͍͜ͱଟ͍ • Netlify • ओʹSPAͷσϓϩΠʹΘΕΔҹ͕ͩ੩తαΠτʹे
• Cloud fl are Pages • CDN͕વࠐΈࠐΈɺҰ൪શ෦ೖΓʹ͍ۙҹ
׆ൃͳ։ൃ ଟ༷ͳબࢶ
RubyͬΆ͍ʂ
·ͱΊ
·ͱΊ • ඞཁͳͷ͚ͩͰࡁΉ੩తαΠτ͍͍ͧ • Rubyʹͨ͘͞ΜͷSSG͕͋Δ • αΠτߏஙʹ͓͚Δͪΐͬͱͨ͠ϩδοΫΛॻ͘ͷʹRuby࠷ద