Programming

Streamlit

【Streamlit】ショートカットキー設定でUXを向上させる方法

こんにちは、JS2IIUです。日々のデータサイエンスやWebアプリ開発の中で、操作効率を上げるためにショートカットキーの活用は非常に効果的です。特にStreamlitのような手軽にインタラクティブなWebアプリケーションを構築できるツールでは、カスタムショートカットキーによってユーザーエクスペリエン...
Streamlit

【Streamlit】多人数同時利用:セッション管理と競合状態のベストプラクティス

こんにちは、JS2IIUです。StreamlitはPythonで手軽にインタラクティブなWebアプリケーションを作成できるフレームワークですが、多人数が同時に利用する状況になると、セッション管理や競合状態に関する課題が浮上します。本記事では、Streamlitの基本構造から、ユーザーセッションの仕組...
Streamlit

【Streamlit】アプリをPWAに変身させよう: 手順と実践ガイド

こんにちは、JS2IIUです。この記事では、Streamlitで開発したアプリをProgressive Web App (PWA) に変換する方法を、技術的な手順と具体的なコード例付きで紹介します。PWAは、Webアプリケーションに**ネイティブアプリに近い機能(インストール、オフライン対応など)*...
Streamlit

【Streamlit】外部CSSでのスタイルカスタマイズ

こんにちは、JS2IIUです。StreamlitのUIにCSSを適用する際に、独立した外部CSSファイルを読み込む方法をみていきます。この方法で、CSSの管理がしやすく、統一したCSSをページに適用することが容易になります。今回もよろしくお願いします。1. イントロダクションStreamlitの魅力...
Streamlit

【Streamlit】Streamlitアプリの国際化(多言語対応)

こんにちは、JS2IIUです。多言語対応についてはブラウザの機能でユーザ側が翻訳する方法が手っ取り早く、制作側は何も用意しなくても良いというメリットがありますが、内容によってはおかしな翻訳になってしまうこともあります。今回は多言語対応を制作側で準備する方法についてみていきます。今回もよろしくお願いし...
Streamlit

【Streamlit】st.session_stateを使った簡易ログインシステム

こんにちは、JS2IIUです。今回はStreamlitアプリにユーザーごとのログイン機能を設置するための基本的な手順を紹介していきます。よろしくお願いします。1. はじめにStreamlit は Python だけで簡単に Web アプリを作ることができるフレームワークです。ですが、少し複雑なアプリ...
Streamlit

【Streamlit】セッションタイムアウトの扱いと注意点(ブラウザの再読込や切断時)

こんにちは、JS2IIUです。個人的にはあまり好きではないのですが、WEB上で名前やメールアドレスだけでなく住所や名前の振り仮名など、わざわざ入力させるサイトが日本には多いと思います。ユーザ体験をさらに悪化させないための方法について考えてみたいと思います。今回もよろしくお願いします。はじめにStre...
Streamlit

【Streamlit】Session Stateで変数の値を保持する

こんにちは、JS2IIUです。Streamlitを使ってアプリケーションを作っていると、「ボタンをクリックしたはずなのに、値がリセットされる」「ページを更新すると入力内容が消える」といった経験をしたことはありませんか?これは、Streamlitの特性としてスクリプト全体が毎回実行されるためです。この...
Streamlit

【Streamlit】ページ構成が多いアプリでの状態管理戦略(状態設計のベストプラクティス)

こんにちは、JS2IIUです。今回もst.session_stateを有効活用する事例の紹介です。複数ページのStreamlitアプリでの活用方法を事例とともに詳しくみていきます。今回もよろしくお願いします。1. はじめにStreamlitで複数のページを持つアプリケーションを構築する場合、ページ間...
Streamlit

【Streamlit】st.session_stateの内容を開発中にデバッグ表示する方法

こんにちは、JS2IIUです。Webアプリを簡単に作れるPythonライブラリ「Streamlit」では、状態を管理するために st.session_state を使うことができます。特に、ボタンのクリック回数や入力フォームの値を保持する際に便利ですが、「今、どんな状態が保存されているのか?」を確認...