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
Plasmoの紹介
Search
Yohei Iino
May 14, 2023
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Plasmoの紹介
Plasmoの紹介
Yohei Iino
May 14, 2023
More Decks by Yohei Iino
See All by Yohei Iino
1年半放置したExpo製アプリを最新化してみた
wheatandcat
0
120
作成中のFlutterアプリの中間発表
wheatandcat
0
99
最近読んだ技術書を簡単紹介
wheatandcat
0
120
ユニバーサルリンク/アプリリンクを使ってQRコードでゲストログインできるようにする
wheatandcat
0
400
Firebase App Checkを実装したので紹介
wheatandcat
0
380
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた
wheatandcat
0
440
Flutter HooksとRiverpodの解説
wheatandcat
0
610
T3 Stack(応用編: Next Auth & SSRの実装紹介)
wheatandcat
1
430
App Routerの紹介
wheatandcat
0
170
Other Decks in Technology
See All in Technology
Browser Spec: Testing Hotwire with Ruby
takahashim
1
150
「エーアイ」をバズワードにしないために RPA 導入経験と Kiro 上での Claude モデル利用経験から
kazzpapa3
0
110
Tofu-Controller lightning talk @ Containerday 2026
gionn
0
150
Rust で関数型ドメインモデリング
takonda
0
180
S3 Filesで挑む! 八戸せんべい汁の食べ頃問題
usanchuu
0
140
導入から定着へ ~コーディングエージェントを日常業務に組み込む実践知~
yukisakai1225
0
140
SAENM ~Jupyterで残すPoCの試行錯誤、未来の自分と仲間を助ける記録!~
terapyon
0
170
20年間 SNS サービス「GREE」 を支えた技術の刷新と、長期運用サービスの Kubernetes へのリアーキテクト
gree_tech
PRO
0
100
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
150
Codex を使った障害対応机上演習の実際
orgachem
PRO
0
190
~最速でビジネスインパクトを創出する~ Sansanのデータ基盤と活用事例
sansantech
PRO
0
110
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
150
Featured
See All Featured
A designer walks into a library…
pauljervisheath
211
25k
Facilitating Awesome Meetings
lara
57
7.2k
How to build a perfect <img>
jonoalderson
1
6.1k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Designing Powerful Visuals for Engaging Learning
tmiket
1
610
Discover your Explorer Soul
emna__ayadi
2
1.3k
Faster Mobile Websites
deanohume
310
32k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
560
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Transcript
Plasmo の紹介 Press Space for next page
自己紹介 📝 飯野陽平(wheatandcat ) 🏢 法人設立(合同会社UNICORN 代表社員) 💻 Work: シェアフル株式会社CTO
📚 Blog: https://www.wheatandcat.me/ 🛠 今までに作ったもの memoir ペペロミア Atomic Design Check List
Plasmo とは? ブラウザ拡張機能を作成するためのReact フレームワーク TypeScript & React で簡単にChrome 拡張が作成できる 従来のChrome
拡張で必要だった設定周りフレームワーク側で抽象化されている
セットアップ 以下のコマンド実行でプロジェクトの作成gは完了 Getting Started | Plasmo $ pnpm create plasmo
コード プロジェクトの作成時は以下のようなコードが生成される import { useState } from "react" function IndexPopup()
{ const [data, setData] = useState("") return ( <div> <h2> Welcome to your{" "} <a href="https://www.plasmo.com" target="_blank"> Plasmo </a>{" "} Extension! </h2> <input onChange={(e) => setData(e.target.value)} value={data} /> <a href="https://docs.plasmo.com" target="_blank"> View Docs </a> </div> ) } export default IndexPopup
簡単なChrome 拡張を作成したので紹介 ▪ plasmo-demo https://github.com/wheatandcat/plasmo-demo
モチベーション 技術系記事をストックする機能が欲しかった ブラウザのブックマークやGoogle Keep だと、見返した時にどこに保存したか忘れるケースが多い 大体のケースは読み終わったら削除してOK だが、既存だと削除が手間なシステムが多い まだ開発中なので、ここから自分好みにカスタマイズしていく予定
デモ 以下は動かしながら紹介する コード https://github.com/wheatandcat/plasmo-demo/blob/main/popup.tsx データの保存はPlasmo のStorage API を使用 デザインはTailwindCSS を使用
右クリックのMenu に追加はBackground Service Worker を使えば可能 コード
まとめ かなり簡単にChrome 拡張が作れるのでオススメ デバッグツールとか作っても良いかも Chrome 拡張特有の部分は抽象化しているので、React さえ知っていれば誰でも自作できる
ご清聴ありがとうございました 🎉