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
複数ソースから集めて作る自分サイト
Search
Daisuke Konishi
July 20, 2024
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
複数ソースから集めて作る自分サイト
Me too Astro #1 での登壇資料 #MetooAstroEvent
Daisuke Konishi
July 20, 2024
More Decks by Daisuke Konishi
See All by Daisuke Konishi
django-import-export で マスターデータ管理生活
dkonishi
0
280
Kansai WordPress Meetup@京都 近況とこれから
dkonishi
0
170
大阪Pythonの会の紹介@Python Kansai #01
dkonishi
1
210
Netlify Functions 叩き初め
dkonishi
0
280
Gatsby.jsでWordPressのフロントエンドを作る
dkonishi
0
320
AWS LambdaからSlackに ○○を送る
dkonishi
0
1.3k
Bench京都怖くない
dkonishi
0
230
WordBench京都への関わりと何を得たか
dkonishi
0
180
最近やったCSSの設計と やってみて感じたこと
dkonishi
0
200
Other Decks in Programming
See All in Programming
act1-costs.pdf
sumedhbala
0
120
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
150
Creating Composable Callables in Contemporary C++
rollbear
0
170
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
270
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
210
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
220
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
280
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.3k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.5k
さぁV100、メモリをお食べ・・・
nilpe
0
160
The NotImplementedError Problem in Ruby
koic
1
960
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
2
250
Information Architects: The Missing Link in Design Systems
soysaucechin
0
980
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Designing for Performance
lara
611
70k
Done Done
chrislema
186
16k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
280
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Embracing the Ebb and Flow
colly
88
5.1k
Everyday Curiosity
cassininazir
0
240
The agentic SEO stack - context over prompts
schlessera
0
830
Transcript
複数ソースから集めて作る 自分サイト Daisuke KONISHI Me too Astro #1
Daisuke KONISHI エンジニアリングマネージャー Web エンジニア コーヒーとラーメンでできています @skd_nw
None
自分のサイト持ってますか • ポートフォリオ • ブログ とかとか
何で作ってますか? • Astro • WordPress • STUDIO • Notion •
何かしらのフレームワーク • その他
これまで色々経由して作ってきました 1. HTML/CSS/JavaScript 2. WordPress 3. Hugo (たしかやった) 4. Next.js
(SSG) 5. Astro
「静的サイトの形で配信したい」にたどり着いている • あまり内容の更新がない • なるべく面倒を見なくていい状態にしたい • 未来で乗り換える可能性はあるのでデータは別で持っていたい • 自分がある程度書けてメンテ出来そうなものにしておきたい A.
Astroで。
1.技術ブログを書いているので その内容を取得・表示 2.個人開発したものを取得・表示 経歴を取得・表示 (今は見せ方の再検討中で閉じてます)
1.ブログ記事
1.ブログ記事の取得 記事本文は不要で、タイトルとリンクだけあればOK • ブログは別途Next.jsで実装しています • 記事データはmicroCMSで管理していますが、Next.jsを経由して取得する ようにしています • Next.jsからRSSを配信してAstroはこれを取得・パースして表示している
1.自サイト側でのブログ記事の更新どうするか • 今は… ◦ 気が向いた時のビルド ◦ 定期的に行っているパッケージアップデートを反映するタイミングでビ ルド • そこまで高頻度で更新しているわけではないので、ある程度ラグがあって
もOK
1.自サイト側でのブログ記事の更新どうするか なるべくリアルタイムで更新するなら... • microCMSのWebhookを利用する • AstroでSSRする • Astro IslandでReactなどを活用してCSRする
2.個人開発したものを取得・表示 • 個人開発の実績データはmicroCMSで管理しています • こちらは特に捻り無くAstroから取得しています
基本的にはSSGにしている • なるべく管理したくないので。 • 各所からデータ取得を行っているが、シークレットやデータ取得量の問題 をあまり気にしなくて良くなるのが大きい • ビルドで処理が終わっているので、とても早くページを届けられる (早いは 正義)
Astroでやるのって結局どうなのか • 運用し始めてからは、考えることがぐっと減って良い • Node.jsの豊富なエコシステムを使えるので、何かしようと思ったときに楽 • ちょっとJSを書こうと思うとちょっと気持ちのハードルがあがる
まぁやってみようよ