このページの内容

Awesome Pyramid

Pyramidを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

管理インターフェース

Adminインターフェースを拡張し、機能を追加または改善するパッケージ。

  • pyramid_formalchemy - ピラミッドベースのFormAlchemyによるCRUDインターフェースを提供する。
  • pyramid_sacrud - Pyramid用のCRUDインターフェース。 Pyramid向けの管理ウェブインターフェースを提供する。従来のCRUDと異なり、 pyramid_sacrudはdjango.contrib.adminのような柔軟な上書きとカスタマイズを 別のリソースバックエンドで実現する。新しいアーキテクチャは リソースとトラバーサル機構を基盤とし、さまざまな用途に対応する。
    • ps_alchemy - pyramid_sacrud向けの拡張機能で、SQLAlchemyモデルを提供。
    • ps_tree - pyramid_sacrud向けの拡張機能で、 レコード一覧をツリー表示する。 sqlalchemy_mpttのモデルと連携できる。
  • Websauna - ピラミッド用のフルスタックアプリケーションフレームワーク

アセット管理

プロジェクトの静的アセットを管理するためのパッケージ。

非同期処理

  • aiopyramid - asyncioを使用してピラミッドを実行。
  • gevent-socketio - gevent-socketioは、Node.jsでLearnBoostが開発したSocket.IOプロトコルのPython実装であり、他の言語に移植された。
  • Stargate - Stargateは、長時間接続に最適なeventletライブラリを使用して、ピラミッドアプリケーションにWebSocketsサポートを追加するパッケージ。
  • channelstream - ウェブソケット通信サーバー(gevent)。

認証

Pyramidの認証方法を改善または拡張するパッケのパッケージ。

  • pyramid_ldap - ピラミッド用のLDAP認証ポリシー。

  • pyramid_ldap3 - ldap3パッケージに基づいたLDAP認証サービスをピラミッドアプリケーションに提供。

  • pyramid_who - repoze.who 2.0 APIを使用したピラミッドの認証ポリシー。

  • velruse - ウェブアプリケーションの第三者 認証を簡易化し、ほとんどの認証 プロバイダーをサポートする。

  • pyramid_simpleauth - ピラミッドアプリケーションにおけるセッションベースの認証とロールベースのセキュリティ

  • Python Social Auth - 多数の 認証方式をサポートするソーシャル認証/登録機構。 対応プロバイダー

  • Authomatic - Pythonウェブアプリケーション向けのシンプルで強力な認証/承認クライアントライブラリ。

  • apex - Pylonsプロジェクトのピラミッド向けツールキット。Velruse(OAuth)および/またはローカルデータベース、CSRF、ReCaptcha、セッション、フラッシュメッセージ、I18Nを使用して認証と承認を追加。

  • pyramid_authsanity - 安全な認証ポリシーを実現し、使いやすいバックエンドを持つことを簡単にする。

  • pyramid_jwt - このパッケージは、PyramidにJSON Web Tokensを用いた認証ポリシーを実装しています。この標準(RFC 7519)は、バックエンドAPIを安全に保護するためによく使用されます。JWTのエンコード/デコード処理には優れたPyJWTライブラリが使用されています。

  • pyramid_ipauth - PyramidにおけるリモートIPアドレスに基づく認証ポリシー。

認可

認可インフラと権限に関連するパッケージ。

  • ziggurat_foundations - フレームワークに依存しないSQLAlchemyクラスのセットで、権限が必要なアプリケーションの構築を容易にします。
  • pyramid_multiauth - Pyramid向けに、他の認証ポリシーをプロキシする認証ポリシー。
  • pyramid_authstack - Pyramidで複数の認証ポ及を併用する方法。
  • horus - Pyramid Web Framework向けのユーザー登録およびログインシステム。
  • pyramid_yosai - Pythonアプリケーション向けのセキュリティフレームワークとPyramidの統合。認可(RBAC権限およびロール)、認証(2FA TOTP)、セッション管理、そして詳細なログ追跡を備えています。https://yosaiproject.github.io/yosai/

キャッシュとセッション

キャッシュとセッションに関連するパッケージ。

デバッグ

バグの特定を支援するパッケージ。

  • pyramid_debugtoolbar - 開発中にPyramidアプリケーションに役立つデバッグツールバーを提供します。
  • pyramid_exclog - Pyramidアプリケーションからの例外をログに記録するパッケージ。
  • pyramid_debugtoolbar_dogpile - pyramid_debugtoolbarとのdogpileキャッシュサポート。
  • pyramid_ipython - PyramidのpshellにIPythonのバインディング。
  • pyramid_bpython - Pyramidのpshellにbpythonのバインディング。
  • pyramid_pycallgraph - PyramidのTweenで、各リクエストに対して呼び出しグラフ画像を生成します。

メール

メール送信の管理を支援するパッケージ。

  • pyramid_mailer - Pyramidアプリケーションからメールを送信するパッケージ。
  • pyramid_marrowmailer - marrow.mailer(以前はTurboMail)とのPyramid統合パッケージ。
  • pyramid_mailgun - Pyramidフレームワーク向けのMailgun統合

フォーム

フォームの機能を拡張するか、新しいフォームタイプを追加するパッケージ。

  • deform - PythonのHTMLフォーム生成ライブラリ
  • colander - 文字列、マッピング、リストに対するシリアライズ/デシリアライズ/バリデーションライブラリ
  • WTForms - Pythonウェブ開発向けの柔軟なフォームバリデーションおよびレンダリングライブラリ
  • ColanderAlchemy - SQLAlchemyのマップクラスに基づいたColanderスキーマを自動生成するツール
  • marshmallow - 複雑なオブジェクトをシンプルなPythonデータ型(シリアライズ/デシリアライズおよびバリデーション)に変換する軽量ライブラリ

メディア管理

  • pyramid_elfinder - elfinderファイルマネージャー向けの接続ツール、Pyramidフレームワーク用に書かれたもの
  • pyramid_storage - Pyramidフレームワークアプリケーションにおけるファイルアップロード処理を行うパッケージ

RESTful API

RESTful APIを開発するためのパッケージ。

  • cornice - PyramidでREST風Webサービスを構築・ドキュメント化するためのヘルパーを提供。HTTP仕様に自動的に従うよう設計。
  • rest_toolkit - Pyramid上に構築された非常に使いやすいRESTサーバー構築ライブラリ。Pyramidの知識がほとんど必要ない。
  • pyramid_royal - RoyalはPyramid拡張で、RESTフルウェブアプリケーションの開発を容易にするもの
  • cliquet - CliquetはHTTPマイクロサービス(データ駆動型RESTAPIなど)の実装を容易にするツールキット
  • webargs - 人間が読みやすいHTTPリクエスト引数パーサーを提供。人気ウェブフレームワークとの組み合わせが可能。
  • ramses - RAMLを使ってRESTフルAPIを生成。Nefertariを使用してElasticSearchを活用したビューを提供。
  • nefertari - NefertariはPyramidとElasticSearchの上に構築されたREST APIフレームワーク。
  • pyramid_swagger - Swaggerを使ってPyramidウェブアプリのインターフェースを定義・バリデーションするための便利なツール。(Swagger 2.0ドキュメント)
  • pyramid-openapi3 - OpenAPI 3.0ドキュメントでPyramidビューをバリデーション。pyramid_swaggerに似ているが、OpenAPI 3.0対応。
  • pyramid_jsonapi - データベースから自動的に JSON API標準APIを生成する。SQLAlchemy ORMと Pyramidフレームワークを使用する。
  • pyramid_apispec - apispecとMarshmallowスキーマを使ってOpenAPI仕様ファイルを作成。

検索

プロジェクトに検索機能を提供するパッケージ。

  • hypatia - Pythonのインデックスと検索システム。

セキュリティ

プロジェクトのセキュリティを向上させるパッケージ。

サービス

  • pyramid_sms - ピラミッドウェブフレームワーク向けSMSサービス。

設定

プロジェクトの設定可能性を管理するためのパッケージ。

  • pyramid_zcml - ピラミッド向けZope構成マーカー言語の設定サポート。
  • pyramid_services - ピラミッドアプリ内でプラグイン可能なサービス層にアクセスするためのパターンとヘルパーメソッドを定義する。
  • hupper - 開発者用のプロセスモニターリローダーで、ファイルの変更を監視し、プロセスを再起動できる

ストレージ

既存のストレージバックエンドの機能を拡張するか、新しいストレージバックエンドを提供するパッケージ。

  • pyramid_tm - ピラミッドアプリケーション向けの中央化された取引管理(ミドルウェアなし)
  • zope.sqlalchemy - SQLAlchemyとトランザクション管理の統合。
  • pyramid_sqlalchemy - SQLAlchemyとPyramidを使用する際に便利に機能する基本的な接続を提供します。
  • pyramid_zodbconn - ピラミッド向けZODBデータベース接続管理
  • pyramid_mongoengine - pyramid-mongoengineパッケージはflask-mongoengineに基づく
  • pyramid_mongodb - PyramidウェブフレームワークでMongoDBを永続化に使うための基本的なPyramidスキャフォールド
  • pyramid-excel - pyramid-excelはpyexcelに基づいており、HTTPプロトコルやファイルシステム上に保存されたExcelファイルの情報の消費・生成を容易にします。このライブラリはExcelデータをリストのリスト、記録(辞書)のリスト、リストの辞書に変換できます。逆にそのようなデータからもExcelデータに復元できます。そのため、Pyramidベースのウェブ開発において、データに焦点を当てることができます。

タスクキュー

タスク/バックグラウンドキューとのやり取りを容易にするパッケージ。

  • pyramid_celery - celeryとの統合を施したピラミッド構成。celeryをpyramidの.iniファイルで設定でき、pyramidの設定をceleryタスク内に含めることができます。
  • pyramid_rq - PyramidでRQ キューシステムを利用できるようにする。Pyramidプロジェクトで RQを監視・利用する最も簡単な方法。

テンプレート

  • pyramid_mako - ピラミッドウェブフレームワーク向けのマコテンプレートシステムのバインディング。
  • pyramid_chameleon - Pyramid向けChameleonテンプレートコンパイラ。
  • pyramid_jinja2 - ピラミッドウェブフレームワーク向けのJinja2テンプレートシステムのバインディング。
  • Tonnikala - PythonテンプレートエンジンとPyramidの統合
  • Kajiki - 高速かつ適切に構成されたXMLテンプレートを提供します。Pyramid integration

テスト

コードのテストやテストデータの生成を支援するパッケージ。

  • webtest - WSGIアプリケーションをラップし、そのアプリケーションにテストリクエストを送るのを簡単に行うようになります。HTTPサーバーを起動せずに済みます。

翻訳

パッケージはプロジェクトの翻訳作業を支援します。

  • lingua - リンガは、コードから翻訳可能なテキストを抽出し、既存の翻訳を確認するためのツールを提供するパッケージです。これは、gettextのxgettextコマンドまたはBabelのpybabelコマンドの使用を置き換えます。
  • pyramid_i18n_helper - 新しい smgid を作成し、msgid をローカル言語に翻訳するためのヘルパー

ウェブフロントエンド統合

  • PyramidVue - Pyramid と VueJs(JavaScript)テンプレートを用いたホットモジュール置換(HMR)スタートテンプレート

ワークフロー

プロセス、手順および/またはビジネスタスクの管理を行うパッケージです。

その他

  • pyramid_layout - Pyramid で UI レイアウトを管理するための拡張機能
  • pyramid_skins - このパッケージは、コードとテンプレート、リソースを統合するためのシンプルなフレームワークを提供します
  • waitress - Waitress は、非常に高いパフォーマンスを備えた純粋PythonのWSGIサーバーであり、標準ライブラリに依存する以外の依存関係は一切ありません
  • pyramid_handlers - Pyramid における Pylons スタイルの「コントローラー」の類似物
  • pyramid_rpc - Pyramid 用のRPCサービス拡張機能。XML-RPCをより拡張可能にし、JSON-RPCおよびAMFをサポートします
  • pyramid_autodoc - PyramidのAPIをドキュメント化するためのSphinx拡張機能
  • pyramid_pages - Pyramidアプリケーションにツリーページのコレクションを提供します。これはdjango.contrib.flatpagesに非常に似ていますが、URLディスパッチにおいてツリーストラクチャとトラバースアルゴリズムを備えています
  • paginate - Pythonによるページネーションモジュール
  • pyramid_tablib - pyramidのためのtablibレンダラー(xlsx、xls、csv)
  • tomb_routes - Pyramidのルーティング周りのシンプルなユーティリティライブラリ
  • pyramid_extdirect - このPyramidプラグインは、ExtJSに含まれるExtDirect Sencha APIのルーターを提供します。ExtDirectはJavaScriptを通じてサーバー側のコールバックを直接実行できるようにし、追加のAJAXのボイラープレートを省きます
  • pyramid_retry - pyramid_retryは、Pyramid用の実行ポリシーであり、リクエストをラップし、特定の「リトライ可能」エラー条件で設定された回数だけリトライを行い、その後クライアントに失敗を通知します

プロジェクト

優れたピラミッドプロジェクトです。

フレームワーク

  • Ringo - Ringoは、Pyramidに基づいたPythonベースのハイレベルウェブアプリケーションフレームワークです。このフレームワークは、フォームベースの管理または管理ソフトウェアの開発に使用できます
  • cone.app - Pyramidに基づいた包括的なウェブアプリケーションのスタブ

CMS

  • nive_cms - Niveは、PythonとウェブフレームワークPyramidに基づいたプロフェッショナルな、モバイルおよびデスクトップサイト向けのコンテンツ管理システムです。詳細情報については、ウェブサイト cms.nive.co を参照してください
  • substanced - Pyramidウェブフレームワークに基づいたアプリケーションサーバー。コンテンツの管理に加え、アプリケーションの作成を容易にするためのユーザーインターフェースとライブラリ、ユーティリティを提供します
  • Kotti - ユーザーに親しみやすく、軽量かつ拡張可能なウェブコンテンツ管理システム。PyramidとSQLAlchemyに基づいています
  • KARL - Pyramidに基づいた中程度のアプリケーション(約80K行のPythonコード)です。これは、協働、組織内のインターネット、知識管理に適したオープンソースウェブシステムです。ウィキ、カレンダー、マニュアル、検索、タグ付け、コメント、ファイルアップロードなどの機能を提供します。詳細はKARLサイトをご覧ください。

Cookiecutter

  • Pylons - 公式Cookiecutterテンプレート

  • Pyramid Runner - 最小限のPyramidのフレームワークで、小規模から大規模なウェブサービスの開発を開始するためのテンプレートを提供することを目的としたもの

    • Traversal based application
    • JSON only response
    • JWT authentication policy
    • Alembic for database revisions
    • Some simple modifications to base tests, views and models base to reduce typing

Eコマース

その他

  • cluegun - ロッキーバートのClueBinをベースにしたシンプルなpastebinアプリケーション。フォーム処理、セキュリティ、ZODBの使用をPyramidアプリケーション内で実証している。
  • shootout - カロス・デ・ガルディアとルカス・フィドスによる「アイデアコンテスト」アプリケーションの例。URLディスパッチ、簡単な認証、SQLAlchemyおよびpyramid_simpleformとの統合を示している。
  • virginia - 非常にシンプルな動的ファイルレンダリングアプリケーション。ファイルシステムのディレクトリから構造化テキスト、HTML、画像をレンダリングできる。トラバーサルの好例でもあり、初期版はrepoze.orgのウェブサイトで使われている。
  • Akhet - Pyramid用のライブラリおよびデモアプリケーション。Pylonsに似た雰囲気を持つ。特に、Pylonsから移行するユーザーに役立つ以前のアプリケーションフレームワークが有名である。そのフレームワークは退役したが、デモは類似の役割を果たしている。
  • Khufu Project - KhufuはPyramid向けのアプリケーションフレームワークで、Jinja2とSQLAlchemyとの連携環境を提供する。
  • Ptah - Ptahは、高速で楽しいオープンソースのハイレベルPythonウェブ開発環境。
  • warehouse - Warehouseは、PyPIが現在使用している古くからのコードベースを置き換えるための次世代Pythonパッケージリポジトリ。
  • travelcrm - TravelCRMは、旅行代理店のすべての規模(小規模から大規模ネットワークまで)における顧客関係の自動化に有効な無料かつオープンソースアプリケーション。
  • RhodeCode - 企業向けソースコード管理プラットフォーム。Mercurial、Git、Subversionのリポジトリに統一されたユーザー制御、権限管理、コードレビュー、ツール統合を適用。世界中で大きな規模のソフトウェアチームが、RhodeCodeを用いてセキュアかつファイアウォール内での協働を実現している。

プロジェクト管理

  • AppEnlight - ウェブアプリケーションのパフォーマンス、例外、稼働状態のモニタリング

資料

新しいピラミッドアプリとプロジェクトを発見する場所です。

書籍

  • Python Web Frameworks - Django、Flask、Tornado、Bottle、Pyramid、CherryPyのトップ6のPythonフレームワークについての詳細を解説。

ウェブサイト

  • Try Pyramid - スタート・スモール、フィニッシュ・ビッグ、ステイ・フィニッシュフレームワーク。公式サイト。

カンファレンス

  • Sushi Sprint at PloneConf 2018 in Tokyo, Japan (2018年11月10日~11日)
  • Pyramid Workshop in Munich, Germany. (2017年5月28日 10時30分~12時30分)
  • PloneConf 2017 - バルセロナPloneデジタル体験コンファレンス(2017年10月16日~22日)
  • PloneConf 2016 - ボストンPloneデジタル体験コンファレンス(2016年10月17日~23日)
  • DragonSprint 2016 - DragonSprintは、Pyramidに関する1週間のスプリント。スプリントはスロベニアのルブリャナで、12月の初週(5日から9日)に開催される。主なテーマはPyramid 2.0とPyramidによる初心者向けの内容。

動画

まず、単一ファイルのウェブアプリ、テンプレート、複数のルートとビューについて学びます。その後、パウルがMyApp Pythonパッケージ、ビューとルート、テンプレートおよび静的資産について教えます。このビデオチュートリアルでは、フォーム、データベースおよびセッション、認証と認可、JSONについてもカバーしています。最後に、拡張性について学びます。これは、カスタム設定、拡張および上書き、カスタムビューのプレディケートについてです。

このコンピュータベースのトレーニングコースを終えたら、Pythonウェブ開発に必要な機能およびPyramidに特有の機能について、基本的な理解を得ることができます。

利用者

貢献

素晴らしいPyramidアプリ、プロジェクト、またはリソースをフォークし、プルリクエストを送ってください。

ライセンス

CC0

法的に可能である範囲内で、@uralbashはこの作品に関するすべての著作権および関連又は隣接権を放棄した。