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
NiceGUI is Nice
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
s2terminal
October 28, 2023
Technology
840
0
Share
NiceGUI is Nice
s2terminal
October 28, 2023
More Decks by s2terminal
See All by s2terminal
TypeScriptでJupyter
s2terminal
0
110
AIをWebアプリに実装するための便利なPythonライブラリ
s2terminal
0
640
段階的なシステムリプレースを実現するデータ同期技術
s2terminal
0
170
1年でモダンなフロントエンドに追いついた話 2019-08-22 Mix Leap Joint #26
s2terminal
0
50
20190706 BCU30 事業を変えるシステムリプレース
s2terminal
0
69
Cognitive Complexity でコードの複雑さを定量的に計測しよう
s2terminal
2
180
MySQLオンラインマイグレーションツールgh-ostで深夜メンテナンスを無くした話
s2terminal
0
72
Microsoft Azureで 女子力を生成する
s2terminal
0
67
かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド
s2terminal
0
58
Other Decks in Technology
See All in Technology
Claude Code を安全に使おう勉強会 / Claude Code Security Basics
masahirokawahara
12
37k
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
320
Cortex Codeのコスト見積ヒントご紹介
yokatsuki
0
110
AIはハッカーを減らすのか、増やすのか?──現役ホワイトハッカーから見るAI時代のリアル【MEGU-Meet】
cscengineer
PRO
0
210
【技術書典20】OpenFOAM(自宅で深める流体解析)流れと熱移動(2)
kamakiri1225
0
170
バイブコーディングで3倍早く⚪⚪を作ってみた
samakada
0
120
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
200
AI: Making Admin and Users, Lives Better
kbmsg
0
120
"おまじない"を卒業する ボイラープレート再入門
shunsuke_1b
1
110
Class.new is all you need
riseshia
1
180
Percolatorを廃止し、マルチ検索サービスへ刷新した話 / Search Engineering Tech Talk 2026 Spring
visional_engineering_and_design
0
150
需要創出(Chatwork)×供給(BPaaS) フライホイールとMoat 実行能力の最適配置とAI戦略
kubell_hr
0
900
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
We Are The Robots
honzajavorek
0
220
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How to Ace a Technical Interview
jacobian
281
24k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
780
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
The Language of Interfaces
destraynor
162
26k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
520
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Transcript
Suzuki Shuto / Twitter @s2terminal_tech NiceGUI is Nice 1 1
Suzuki Shuto / Twitter @s2terminal_tech NiceGUI を知っていますか? Do you know
NiceGUI? 2 2
Suzuki Shuto / Twitter @s2terminal_tech NiceGUIとは • https://github.com/zauberzeug/nicegui/ • PythonだけでWebアプリをすぐ作れるフレームワーク
• StreamlitやGradioに似ている • Streamlitの特徴を述べたあと、NiceGUIとの違いを説明します ◦ Gradioについては触れないが、下記が詳しい ▪ 【Streamlitよりいいかも?】機械学習系のデモアプリ作成に最適!Gradio解説 - 学習する天然ニューラルネット https://aotamasaki.hatenablog.com/entry/gradio-explanation 3 3
Suzuki Shuto / Twitter @s2terminal_tech Streamlitの特徴 • pip installして コードを書いて
$ pythonで起動して localhost開けば Webアプリが動く • 簡単!便利! 4 4
Suzuki Shuto / Twitter @s2terminal_tech Streamlit is nice. 5 5
Suzuki Shuto / Twitter @s2terminal_tech Streamlitの弱点 • Streamlitは色々な事を”魔法”のようにやってくれるが 複雑な使い方すると、引っかかる事もある •
たとえば... ◦ 初期状態が外部から取得したデータなど常に変化する時 ◦ ボタンを押したら入力欄を増やすなど動的に定義したい時 6 6
Suzuki Shuto / Twitter @s2terminal_tech NiceGUIの特徴 • NiceGUIの使い方は Streamlitと似ている •
pip installして コード書いて起動したら Webアプリが動く • 簡単!便利! 7 7
Suzuki Shuto / Twitter @s2terminal_tech 8 画像はGitHub Star Historyより https://star-history.com/#zauberzeug/nicegui&streamlit/streamlit&gradio-app/gradio&Date
Suzuki Shuto / Twitter @s2terminal_tech NiceGUIとStreamlitの違い • NiceGUIは、より”素直に”動く ◦ 処理が意図せず実行されるような事が少ない
◦ フォームを動的に増減させる等が簡単にできる ◦ Vue(Quasar)やTailwind CSSの機能が露出しており Web開発の抽象度が比較的低くなっている 9 9
Suzuki Shuto / Twitter @s2terminal_tech NiceGUIとStreamlitの違い • 意図通り動かないStreamlitのコード 10 10
コードはNiceGUIのGitHub Issuesより引用 https://github.com/zauberzeug/nicegui/issues/1#issuecomment-847413651
Suzuki Shuto / Twitter @s2terminal_tech NiceGUIとStreamlitの違い • NiceGUIとStreamlitの使い方は似ている ◦ NiceGUIの公式サイトにも「We
like Streamlit」とある • NiceGUIには、入力のリアルタイム反映などのような Streamlitが持つ"魔法"のような機能は少なくなっている • NiceGUIはデータサイエンスや機械学習よりも より一般的なアプリケーション開発に向く 11 11
Suzuki Shuto / Twitter @s2terminal_tech まとめ Streamlit 入力をもとに自動で処理を実行し反映する →データアプリケーションが得意 Gradio
(ここでは触れてない) APIの発行やJupyter(Colab)上での実行ができる →機械学習アプリケーションが得意 NiceGUI 動的なUIフォームの定義が可能 →柔軟なアプリケーション構築が得意 12 12 • 適切に使い分けることで、より便利に!
Suzuki Shuto / Twitter @s2terminal_tech References • Streamlit ◦ https://github.com/streamlit/streamlit
• Gradio ◦ https://github.com/gradio-app/gradio • NiceGUI ◦ https://github.com/zauberzeug/nicegui/ 13