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
BOOTH における Charcoal 実践活用術
Search
cilvia
September 29, 2023
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
BOOTH における Charcoal 実践活用術
PIXIV MEETUP 2023 LT セッションにて発表した資料です
cilvia
September 29, 2023
Other Decks in Technology
See All in Technology
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
4
2.1k
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
CLIライブラリ開発を支える技術
htnabe
0
150
[Kiro Meetup #7] Kiro Crew Dive Deep
konippi
0
270
ScotSecure West 2026 - Glasgow
raybugg
0
160
今話題のAI「Jev」って何? 宇宙最速で学ぶ会
minorun365
PRO
32
20k
登壇の自信を奪う3匹のオバケ / 3 Ghosts That Rob You of Your Confidence in Public Speaking
pauli
9
1.1k
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
120
AI時代、データエンジニアが一番おもろい
genshun9
0
690
Vibe Coding で作ったプロダクトをどう安全に動かすか / How to Safely Run Products Built with Vibe Coding
glidenote
0
530
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
1.3k
beyond jj: config & tools ecosystem
indirect
0
5.9k
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
940
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
520
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
540
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
480
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
440
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Marketing to machines
jonoalderson
1
5.8k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
340
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1k
Transcript
pixiv Inc. BOOTHにおける Charcoal実践活用術 @cilvia
Profile cilvia BOOTH部 サービス開発チーム • 22新卒、2年目エンジニア • MEETUP LP実装も担当 •
スプラではホクサイ使い
BOOTHについて
クリエイター向けECサービス こんな感じのロゴのやつです。
フロントエンド技術スタック Ruby on Rails Slim (テンプレートエンジン) デザインツール figma JS (TypeScript)
React, Vue, jQuery
Charcoal について
ピクシブのデザインシステム こんな感じのロゴのやつです。
ピクシブの価値観と 各プロダクトの特徴 を重視した汎用的デザインシステム
少しずつ BOOTH に Charcoal を導入中!
pixiv Inc. BOOTHにおける Charcoal実践活用術 @cilvia
こんなことで困った!
Charcoal の導入 【事例 #1】
1⃣ フロント環境が複雑 😭 Slim React Vue
2⃣ BOOTH のテーマ色がない 😭 Charcoal には pixiv のカラーしかない Primary Secondary
A. を使おう!
Tailwindcss を使おう! - tailwindcss で使える実装 - 複雑な技術スタックでも、class さえ書ければ使える - 拡張もtailwind
公式ドキュメント見るだけ、簡単 @charcoal-ui/tailwind-config
こんな感じで書くと...
こうなります
Tailwindcss はいいぞ! 結論
こんなことで困った!
Typography の 特殊な仕様 【事例 #2】
→ half-leading-cancellation デザインと実装が違う⁉ デザイン上と、実装でテキストの上下の余白が異なる
half-leading-cancellation??? Charcoal (typography) web標準
なんかのボタン half-leading-cancellation??? web標準のhalf-leading が グリッドシステム と 相性が悪い😭
実装で解決する! A1.
.preserve-half-leading 上下のマージンを、web標準に戻してくれる
デザインで解決する! A2.
figmaで文字の余白を消す default Vertical Trim
Vertical trim で設定
やり方はそれぞれ あった方法で! 結論
こんなことで困った!
コンポーネントの カスタマイズ 【事例 #3】
古いデザインとの競合 既存 CSS のスタイルと競合する @charcoal-ui/react は便利なんだけど...
BOOTH カラーがない! pixiv カラーだけ😭 BOOTH では浮く...
コンポーネントを 拡張して使おう! A.
!important を使って、スタイル修正している例
意外と力技で なんとかなる 結論
終わりに
Charcoalは かなりカスタマイズ できて便利! 今日のまとめ
みんなも使ってみてね! 今日のまとめ https://charcoal-web.pixiv.design/
こんなことで困った!
まだ話したいのに 時間がない 【事例 #extra】
この後、AtSで 質問お待ちしています
以上!