Repolode
dropseed

dropseed/plain

DjangoからフォークしたPython製Webフレームワーク。型付きモデル、クラスベースビュー、Postgres専用ORM、AIコーディングエージェント向けの組み込みツールを備えています。

代替できる製品:Django

スター
1,044
フォーク
28
未解決の Issue
16
最終コミット
3 日前

これは何?

PlainはWebアプリケーションを構築するためのPython製Webフレームワークです。Djangoからフォークして始まり、明示的で型を重視したコードを中心に再構成されています。モデルでは型注釈付き属性としてフィールドを宣言し、その型はビュー、フォーム、URLルーティングにも引き継がれます。モデルがサポートするのはPostgresのみです。スタックでは、テンプレートにJinja2、フロントエンドにhtmxとTailwind CSSを使用し、Pythonのツールにはuv、ruff、tyを採用しています。

フレームワークにはOpenTelemetryによるトレースとスロークエリ検出が標準で組み込まれており、追加設定なしでN+1クエリの問題を見つけられます。また、エージェント向けの機能として、プロジェクトルールファイル、検索や型付きシグネチャの表示に対応したコマンドラインのドキュメントブラウザー、パッケージのインストール、バージョンアップ、パフォーマンス最適化、バグ報告に使えるスラッシュコマンド形式のスキルも備えています。

Plainは、認証、セッション、REST API、MCPサーバー、バックグラウンドジョブ、メール、キャッシュ、管理画面、フィーチャーフラグ、OAuthやマジックリンクによるログインをカバーする31のファーストパーティパッケージで構成されています。Python 3.14以降が必要です。

主な機能

  • 01ビュー、フォーム、URLにも型が引き継がれる、型注釈付きのモデルフィールドを使用します。
  • 02モデルのオプションで制約を宣言できる、Postgres専用ORMを備えています。
  • 03OpenTelemetryによるトレースとスロークエリ検出を標準で利用できます。
  • 04エージェント向けに、検索と型付きシグネチャの出力に対応したコマンドラインのドキュメントを備えています。
  • 05認証、ジョブ、API、管理画面などをカバーする31のファーストパーティパッケージを備えています。
  • 06テンプレートにJinja2、フロントエンドにhtmxとTailwind CSSを使用します。

ユースケース

  • PythonでPostgresをバックエンドとするサーバーサイドレンダリングのWebアプリを構築する。
  • 型が明確なDjangoスタイルのコードを、単一のフレームワークで保守したいチーム。
  • AIコーディングエージェントに、型付きシグネチャや組み込みドキュメントを活用させたいプロジェクト。
  • バックグラウンドジョブ、メール、OAuthログインを単一のエコシステムで必要とするアプリ。

クイックスタート

  1. 1

    uvでプロジェクトを開始する

    uvx plain-start my-app
  2. 2

    公式サイトで手順を最初から最後まで確認する

使う前に知っておきたいこと

  • モデルはPostgres専用のため、PostgreSQLデータベースが必要です。
  • Python 3.14以降が必要です。
  • プロジェクトのメタデータにライセンスが記載されていないため、利用条件は不明です。

収録されている特集

トピック

よくある質問

plain とは?
DjangoからフォークしたPython製Webフレームワーク。型付きモデル、クラスベースビュー、Postgres専用ORM、AIコーディングエージェント向けの組み込みツールを備えています。 PlainはWebアプリケーションを構築するためのPython製Webフレームワークです。Djangoからフォークして始まり、明示的で型を重視したコードを中心に再構成されています。モデルでは型注釈付き属性としてフィールドを宣言し、その型はビュー、フォーム、URLルーティングにも引き継がれます。モデルがサポートするのはPostgresのみです。スタックでは、テンプレートにJinja2、フロントエンドにhtmxとTailwind CSSを使用し、Pythonのツールにはuv、ruff、tyを採用しています。
plain は無料で使えますか?ライセンスは?
plain にはライセンスが明記されていません。コードは公開されていますが、ライセンスがない場合は再利用の許諾がないため、利用前に作者に確認することをおすすめします。
plain は今もメンテナンスされていますか?
活発にメンテナンス中。plain の最終コミットは 2026年10月20日 です。
plain は何に使えますか?
PythonでPostgresをバックエンドとするサーバーサイドレンダリングのWebアプリを構築する。 型が明確なDjangoスタイルのコードを、単一のフレームワークで保守したいチーム。 AIコーディングエージェントに、型付きシグネチャや組み込みドキュメントを活用させたいプロジェクト。 バックグラウンドジョブ、メール、OAuthログインを単一のエコシステムで必要とするアプリ。
plain のインストール方法は?
uvでプロジェクトを開始する: uvx plain-start my-app 公式サイトで手順を最初から最後まで確認する
plain はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/dropseed/plain

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト