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
440
1
Share
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
Conference as a communication hub for all of us
okuramasafumi
0
55
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
160
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
400
Reading Rails 1.0 Source Code
okuramasafumi
0
370
RDoc meets YARD
okuramasafumi
4
260
Why doesn't Ruby have Boolean class?
okuramasafumi
0
57
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
110
Writing documentation can be fun with plugin system
okuramasafumi
0
270
Alba: Why, How and What's So Interesting
okuramasafumi
0
530
Other Decks in Programming
See All in Programming
関係性から理解する"同一性"の型用語たち
pvcresin
2
630
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
430
JavaDoc 再入門
nagise
0
260
Claspは野良GASの夢をみるか
takter00
0
160
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
Oxlintのカスタムルールの現況
syumai
5
980
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
420
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
610
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
440
The NotImplementedError Problem in Ruby
koic
1
380
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
240
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
BBQ
matthewcrist
89
10k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
360
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
エンジニアに許された特別な時間の終わり
watany
107
250k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
240
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
150
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
How to make the Groovebox
asonas
2
2.2k
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࠷ద