$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NiceGUI is Nice
Search
s2terminal
October 28, 2023
Technology
0
750
NiceGUI is Nice
s2terminal
October 28, 2023
Tweet
Share
More Decks by s2terminal
See All by s2terminal
TypeScriptでJupyter
s2terminal
0
91
AIをWebアプリに実装するための便利なPythonライブラリ
s2terminal
0
600
段階的なシステムリプレースを実現するデータ同期技術
s2terminal
0
150
1年でモダンなフロントエンドに追いついた話 2019-08-22 Mix Leap Joint #26
s2terminal
0
46
20190706 BCU30 事業を変えるシステムリプレース
s2terminal
0
55
Cognitive Complexity でコードの複雑さを定量的に計測しよう
s2terminal
2
170
MySQLオンラインマイグレーションツールgh-ostで深夜メンテナンスを無くした話
s2terminal
0
58
Microsoft Azureで 女子力を生成する
s2terminal
0
58
かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド
s2terminal
0
47
Other Decks in Technology
See All in Technology
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
150
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
7
1.6k
乗りこなせAI駆動開発の波
eltociear
1
1.1k
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
500
生成AI時代におけるグローバル戦略思考
taka_aki
0
190
AI-DLCを現場にインストールしてみた:プロトタイプ開発で分かったこと・やめたこと
recruitengineers
PRO
2
140
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
460
CARTAのAI CoE が挑む「事業を進化させる AI エンジニアリング」 / carta ai coe evolution business ai engineering
carta_engineering
0
1.6k
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
1
180
ChatGPTで論⽂は読めるのか
spatial_ai_network
9
29k
AWS re:Invent 2025で見たGrafana最新機能の紹介
hamadakoji
0
390
Gemini でコードレビュー知見を見える化
zozotech
PRO
1
260
Featured
See All Featured
A better future with KSS
kneath
240
18k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Embracing the Ebb and Flow
colly
88
4.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Docker and Python
trallard
47
3.7k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
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