PyCon JP 2025

ReactPyを使ってreact likeにUIをPythonで実装する
2025-09-26 , Dahlia 1

対象者

  • DjangoやFlaskでWebアプリケーションを開発している中級Pythonエンジニア
  • フロントエンド開発にJavaScriptを使っているが、Pythonでも同様の開発体験を求めている開発者
  • 既存のDjangoプロジェクトにモダンなUI要素を追加したいと考えている方

発表内容

1. ReactPyとは何か?

  • 「フロントエンド苦手だけど、こんなのあったら便利だよね」な話
  • ReactPyの特徴を簡単に紹介

2. ReactPyの強みとフロントエンド構築ツールとしての位置づけ

  • ReactPyの独自の強み
  • ReactPyの技術的特徴

3. ReactPyの導入方法と実践活用

  • ReactPy単体での使用方法
  • 既存プロジェクトへの導入パターン
  • 実装デモとコード例

発表概要詳細

発表内容

1. ReactPyとは何か?

  • 「フロントエンド苦手だけど、こんなのあったら便利だよね」な話
  • JavaScript書かずにReactっぽいことがPythonでできる
  • HTMLテンプレートよりもっと柔軟にUIが作れる
  • ReactPyの特徴を簡単に紹介
  • Reactのコンポーネント思想をPythonで実現
  • Python慣れしている人には親しみやすい書き方

2. ReactPyの強みとフロントエンド構築ツールとしての位置づけ

  • ReactPyの独自の強み
  • 既存のWebアプリケーションに自然に組み込める
  • Pythonの豊富なライブラリエコシステムとの親和性
  • ReactPyの技術的特徴
  • Virtual DOM的な仕組み
  • 状態管理の仕組み

3. ReactPyの導入方法と実践活用

  • ReactPy単体での使用方法
  • FastAPI、Flaskなど様々なバックエンドとの組み合わせ
  • 新規プロジェクトでの始め方
  • 既存プロジェクトへの導入パターン
  • 段階的導入戦略(一部のページから始める)
  • reactpy-djangoを使った既存Djangoプロジェクトでの活用例
  • 実装デモとコード例
  • 従来のHTMLテンプレートとの比較
  • ReactPyで実装した動的コンポーネントの例

発表への想い

私自身、長年DjangoでWebアプリケーションを開発してきましたが、モダンなUIを実装するためにJavaScriptとPythonを行き来する開発体験に課題を感じていました。特に、小〜中規模のプロジェクトでReact + Django REST Frameworkの組み合わせを採用するには複雑すぎる場合が多く、かといってDjango Templateだけでは表現力に限界がありました。

ReactPyに出会ったとき、「これまでPythonエンジニアが感じていたフロントエンド開発の壁を取り払える可能性がある」と感じました。同じような課題を抱える多くのPythonエンジニアに、新しい選択肢としてReactPyを紹介し、より効率的で楽しい開発体験を共有したいと考えています。

難易度(想定)

中級


Why did you choose this topic?:

最近はPythonでUIを作成するツールも多くありますが、フロントエンドフレームワーク(React)をベースにしたツールは珍しく、ぜひ共有したいと思いこのテーマを選びました。

Knowledges and know-how the audience can get from your talk:

・ReactPyの基本概念と実装方法の理解
・既存DjangoプロジェクトにReactPyを導入する具体的な手順
・Python単一言語でのフルスタック開発の可能性とメリット
・フロントエンド開発におけるPythonエコシステムの新たな選択肢

Prior knowledges speakers assume the audience to have:

・基本的なPythonの知識
・フロントエンド(HTMLといった基礎やReactなどのツール)の多少の知識

Audience experiment:

Intermediate

Language of presentation:

日本語

Language of presentation material:

日本語

PythonとJavaScriptと野球をこよなく愛するWeb系エンジニア。都内のPythonもくもく会によく出没する。