Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2023/03/17 BS/WEBクライアント作ってみた
Search
Takuma Shinohara
March 17, 2023
Technology
0
1.4k
2023/03/17 BS/WEBクライアント作ってみた
Takuma Shinohara
March 17, 2023
Tweet
Share
More Decks by Takuma Shinohara
See All by Takuma Shinohara
MCPとは?
shinoharata
0
42
BlueskyMeetup in Fukuoka アイデアソン
shinoharata
1
87
BlueskyMeetup in Fukuoka アイデアソン結果発表
shinoharata
1
75
いまのBlueskyってどうなの
shinoharata
0
130
四谷ラボとは ※2025/05/31
shinoharata
0
120
What's is Bluesky
shinoharata
0
1.7k
dissolute fat
shinoharata
0
220
20240520_toranoana_lab.pdf
shinoharata
0
220
民主的なSNSは日本を救う
shinoharata
0
380
Other Decks in Technology
See All in Technology
ページの可視領域を算出する方法について整理する
yamatai1212
0
100
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
12k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
21k
国産クラウドを支える設計とチームの変遷 “技術・組織・ミッション”
kazeburo
6
10k
段階的に進める、 挫折しない自宅サーバ入門
yu_kod
4
1.6k
経営から紐解くデータマネジメント
pacocat
7
1.6k
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
1k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.2k
Master Dataグループ紹介資料
sansan33
PRO
1
4k
事業部のプロジェクト進行と開発チームの改善の “時間軸" のすり合わせ
konifar
3
350
命名から始めるSpec Driven
kuruwic
1
640
雲勉LT_Amazon Bedrock AgentCoreを知りAIエージェントに入門しよう!
ymae
2
230
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing for Performance
lara
610
69k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Writing Fast Ruby
sferik
630
62k
Designing Experiences People Love
moore
142
24k
Transcript
Webクライアント作ってみた The Blue ~君とみた青空の先は
なぜ作ろうとおもった?
なぜ作ろうとおもった? Skylightが あったから
システム構成 Firebase Hosting User Cloudflare
プログラムの構成 Vue 2系 Nuxt 2系
プログラムの構成
プログラムの構成 https://github.com/penpenpng/skylight/blob/main/src/lib/atp.ts
突然ですが
突然ですが
できた
でも...
None
None
None
ノーテストで公開 ダメ絶対!! :wakaru: :seyana: :otsu:
その後は一旦、公開停止
ネーミングどうしよう
None
ゲーム
None
あまり実装できてない
理由
確定申告 Ah 冗談じゃあないないわ コトシノ・カクテイィ・シンコク その時が来たって如何にもならないぜ
目指すとこ • きれい、使いやすい ◦ シンプルで誇張しないデザイン ◦ 純粋なキー操作 ◦ 最小限のアクションボタン等 •
デスクトップでも使いたい ◦ タイムラインと通知同時 ◦ リプ等を含めたスレッド ◦ 詳細はモーダルで開くなど • 多言語化対応 ◦ 日本語 ◦ 英語
実装のポイント • APIアクション中の表示 ◦ 多重投稿を防ぐ • ふぁぼ、リポストの連打対応 ◦ ローディングアニメーションと、ボタン比活性 ◦
公式アプリ、公式WEBこれ出来てないよ! • ロード中のロードアクション ◦ 同上 • タイムラインの管理 ◦ LocalStorageに積む? ◦ 通知の未読・既読管理
実装のポイント • POSTのバリデーション ◦ 本文前の改行、文末の改行・空白の削除 ◦ 連続する空白・改行の replace処理 ◦ 試してみると公式アプリは投稿時に実行している
• POSTの表示 ◦ 連続の改行・空白の処理 ◦ 公式アプリは表示時もおこなっていた • XSS対策 ◦ 対策をした上で、 必要なタグをreplace
目指すとこ(本音) • 廃人仕様 ◦ 投稿フォームの常時表示 ◦ タイムラインの自動更新・流し ◦ クソデカリポストボタン ◦
クソデカふぁぼボタン ◦ キーコンフィグ対応 ◦ :otsu:や:aza:、:is_all_scam:などカスタム絵文字対応 ※リアクションは無理だわ。。。
目指すとこ(本音) • 多言語化対応 ◦ 厨二病 ◦ 関西弁 ◦ ツンデレ ◦
ねこ
青空は もっと自由で あっていい!! :wakaru: :seyana: :is_all_scam: