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
35
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
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
190
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
500
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
5
550
typoなんかねぇよ
raspython3
0
610
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
160
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
240
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
270
Cloudflare is Agents
chimame
0
180
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
React本体のコードリーディング
high_g_engineer
1
160
ソフトウェアラスタライザ
fadis
1
720
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
For a Future-Friendly Web
brad_frost
183
10k
Raft: Consensus for Rubyists
vanstee
141
7.7k
The Curse of the Amulet
leimatthew05
2
14k
Git: the NoSQL Database
bkeepers
PRO
432
67k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Building an army of robots
kneath
306
46k
Fireside Chat
paigeccino
42
4k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
500
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࠷ద