Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
俺の勉強会:oss-contribution-graphで草駆動理論
Search
Yuji Teshima
February 24, 2026
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
俺の勉強会:oss-contribution-graphで草駆動理論
草駆動理論が誕生しました
Yuji Teshima
February 24, 2026
Transcript
9 slides
草駆動OSS貢献のすすめ 草を生やせば、issue読み続けるんちゃう? Yuji Teshima @yujiteshima
OSSに貢献したい、でも … モチベーションが続かない issue読むの大事なのは分かってる。でもしんどい。 でも、草でモチベ維持できる時もあったよね あの緑のマスが埋まっていく快感 … しかし、どのOSSに貢献したか分からない。 ← 全部同じ緑。どこへの貢献か分からん…
oss-contribution-graph 複数OSSへの貢献を色分けして1つのグラフに表示 Rails Vue.js Kubernetes Other 1行貼るだけ GitHub Profile READMEにURLを追加するだけ
auto=true 貢献のある組織を自動検出。手動設定不要 プリセットカラー Rails, Vue, K8s, FastAPI… 主要OSSの色を内蔵
Xでシェアしたい → OGP対応が必要 SVG出力 現状の出力形式 ベクターで綺麗 OGP SVGは OGP画像に使えない PNG出力
SVG → PNG変換 の仕組みが必要 → SVG→PNG変換の仕組みを作ることに
PNG出力の裏側 — resvg-js 1 GitHub API 貢献データ取得 → 2 SVG生成
色分けされた草グラフ → 3 resvg-js SVG → PNGラスタラ イズ (Rustベースの高速レ ンダラー) → 4 フォント読込 テキストも描画 → 5 Vercel Serverless Functionで URLアクセスでPNG返 却 ローカルでは完璧に動いた。ここまでは順調。
Vercel にデプロイしたら文字が消えた ローカル: システムフォントにフォールバック → 表示される Vercel: システムフォントがない → テキスト消滅
💀 PR#15 process.cwd() PR#16 fontBuffers PR#17 Base64埋め込み PR#18 font-family属性 PR#19 fontBuffers追加 PR#20 fontFiles に変更 fontFiles + loadSystemFonts:false + vercel.json includeFiles + SVGのfont-family属性 → 全部揃って初めて動く 上手くいかなくて、ずっとトライアンドエラーして、 上手く行った時って最高
草駆動理論 草が可視 化 される 生やしたく なる issueを 読む 貢献する 草が生える
🔄 意志の力に頼るな、仕組みで回せ
草を生やして OSSに貢献しよう oss-contribution-graph で あなたの貢献を可視化 github.com/yujiteshima/oss-contribution-graph スターお願いします!
None
More Decks by Yuji Teshima
See All by Yuji Teshima
ActionCableの相手はブラウザだけじゃない — Railsでデバイス群をリアルタイム管制する
yujiteshima
1
190
名古屋Ruby会議05_LT.pdf
yujiteshima
2
350
rubykaigi2026LT_The Joy of Taking to Hardware in Ruby
yujiteshima
1
600
Nuxtで作ったBlogサイトを高速化しようと頑張った話
yujiteshima
0
1.3k
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
460
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1.1k
Visualization
eitanlees
153
17k
Navigating Team Friction
lara
192
16k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
Being A Developer After 40
akosma
PRO
92
590k
Fireside Chat
paigeccino
43
4.1k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k