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
Vercel Edge Functions を使って作る画像メーカー
Search
Doarakko
April 10, 2024
Programming
89
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vercel Edge Functions を使って作る画像メーカー
https://zenn.dev/peperoncicicino/articles/04ddadba105194
Doarakko
April 10, 2024
More Decks by Doarakko
See All by Doarakko
Cloudflare Workers で X(Twitter)のボットを作ってみた
doarakko
0
330
JOIN して1ヶ月のエンジニアに聞いた Liiga の良いところ 3 選
doarakko
0
89
わんわおーん
doarakko
0
76
職場を明るくする
doarakko
0
330
コードレビューの時間を削減しました
doarakko
0
110
仕事中に隠れてテレビ番組表を見るぞ
doarakko
0
220
GitHub Project の運用を自動化しました
doarakko
0
120
GitHub Actions に入門しました
doarakko
0
1.4k
積ん読を消化するために
doarakko
0
1.3k
Other Decks in Programming
See All in Programming
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.4k
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
310
Creating Composable Callables in Contemporary C++
rollbear
0
200
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
340
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
220
Vite+ Unified Toolchain for the Web
naokihaba
0
740
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
120
共通化で考えるべきは、実装より公開する型だった
codeegg
0
210
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.4k
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
240
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
120
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.9k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Making Projects Easy
brettharned
120
6.7k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Become a Pro
speakerdeck
PRO
31
6k
Faster Mobile Websites
deanohume
310
32k
Mind Mapping
helmedeiros
PRO
1
280
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
Facilitating Awesome Meetings
lara
57
7k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
460
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
Vercel Edge Functions を使って作る 画像メーカー Engineer Guild Lightning Talk @Doarakko
# 経歴 BtoB SaaS、HR、EC(現職) # 仕事 金融系新規プロダクトの開発チームリード バックエンド、フロントエンド、インフラとフルサイクルに開発 # 趣味
・海外サッカー観戦 ・個人開発 たなあみ @Doarakko 2
自分の体型に一番近いポケモンを見つけられるサービス「PokeFit」 3
Vercel とは 4 ・簡単に言うと Web アプリを公開するためにいろいろなものを提供してくれるサービス ・Next.js は Vercel
が作ってます ・最近は Postgres・Redis・Storage なども提供 → Vercel だけでいろいろなサービスを作れる💪
Vercel Edge Functions とは 5 ・JavaScript のコードを CDN 上で動かせるようにするもの ・超簡単に言うと、ユーザーにより近いところで処理が行われるので速い
🍍 ランタイムを「edge」にするだけ
画像メーカーの例 6 https://gigazine.net/news/20201015-ghibli-subtitles-maker/ https://web.save-editor.com/pic/picture_text_jojo_tool.html
画像メーカー? 7
画像メーカーには OGP 画像が必要不可欠(個人的な意見) 8 生成した画像を SNS で拡散してほしい → 画像付き投稿はアカウント連携しないとできない(X など)
→ 画像をローカルに保存してから投稿するのめんどくさい → 画像投稿だとサイト URL は共有されずらい 🍇 Web Share API では PC で対応されていない環境がある(2024年4月現在)
画像メーカーには OGP 画像が必要不可欠(個人的な意見) 9 URL 投稿により OGP 画像が展開されるようにすることで アカウント連携なしで間接的に画像を SNS
に共有できるようにする
OGP ありの画像メーカーを作るつらみ 10 ・生成された画像ごとにページを生成、ページごとの OGP 画像を作成する必要が ・画像メーカーなので画像が大量生成される → 読み込み、書き込み、保存し続けることにお金がかかる💰
「PokeFit」では約30万枚の画像が生成されています 11
Vercel Edge Functions を使って無料で運用 12
Vercel Edge Functions がリクエストの度にOGP 画像を動的に生成 13 クローラー OGP 画像の URL
Vercel Edge Functions 画像を保存するストレージ
画像を返すAPIを実装してメタタグにパスを埋め込み 14 index.tsx /api/og/index.tsx 🍎 HTML/CSS を SVG に変換するライブラリ「vercel/satori」を使用
🚨 永遠に無料で運用はできません 15 ・Vercel Edge Functions の無料枠(月50万回:2024年4月現在) を超えるとお金がかかる ・生成された画像ごとにユニークなページを作成している →
ページ ID と内容(今回はポケモンの ID)を保存するためのデータストアが必要 → データストアの無料枠を超えるとお金がかかる(今回は Supabase を使用) 🎉 相当使われないと無料枠は超えません、超えた時は逆に喜びましょう
仕組みは Vercel が用意してくれているので あとは何をどう表示するのか考えるだけ
まとめ 17 ・今 Edge が熱い ・オリジナリティも出せて短期間でアウトプットできるので 勉強ついでに何かアプリを作りたい方に画像メーカーの開発おすすめです ・楽しんでものづくりしてます
Vercel Edge Functions を使って作る 画像メーカー Engineer Guild Lightning Talk @Doarakko