Repolode
CrowCpp

CrowCpp/Crow

HTTP/WebSocketサービスを構築するための、高速で使いやすいFlask風C++マイクロフレームワーク。ヘッダーオンリーで利用できます。

スター
5,009
フォーク
565
未解決の Issue
91
最終コミット
一昨日

これは何?

Crowは、HTTPおよびWebSocketのWebサービスを構築するためのC++フレームワークです。ルーティングのスタイルはPythonのFlaskを手本としており、URLパターンとハンドラー関数を使ってエンドポイントを定義できるため、PythonやJavaScriptのWebフレームワークに慣れた開発者にもなじみやすい設計です。

ハンドラーの型はURLパラメーターに対してコンパイル時にチェックされるため、/hello/<int>のようなルートとハンドラーのシグネチャが一致しない場合は、コンパイルエラーとして報告されます。また、JSONリクエスト/レスポンス対応、Mustacheベースのテンプレート機能、multipartリクエスト/レスポンスの処理、拡張用のミドルウェアも備えています。

Crowはヘッダーオンリーライブラリとして配布されており、単一ヘッダー版も利用できます。C++11/14を対象としています。非同期処理とHTTP/2は開発中の機能として記載されています。

主な機能

  • 01URLパラメーターに対応したFlask風のルーティング。
  • 02ハンドラーの引数とURLパラメーターをコンパイル時に型チェック。
  • 03JSONリクエスト/レスポンスに標準対応。
  • 04crow::mustacheによるMustacheベースのテンプレート機能。
  • 05ヘッダーオンリーライブラリで、単一ヘッダー版も利用可能。
  • 06ミドルウェア対応とWebSocket処理。

ユースケース

  • 大規模なフレームワークを使わずに、C++で軽量なREST APIを構築する。
  • 既存のC++アプリケーションにHTTPまたはWebSocketのエンドポイントを追加する。
  • Mustacheテンプレートを使って、シンプルなサーバーサイドレンダリングのページを配信する。

クイックスタート

  1. 1

    READMEにリンクされているセットアップガイドを開きます

  2. 2

    crow.hをインクルードし、READMEのHello Worldの例をビルドします

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

  • プロジェクトのメタデータではライセンスが明確に特定されていないため、使用前にLICENSEファイルを確認してください。
  • AsyncサポートとHTTP/2はまだ開発中です。
  • READMEにはパッケージマネージャーでのインストールコマンドが記載されておらず、セットアップ方法は外部ガイドでのみ説明されています。

トピック

よくある質問

Crow とは?
HTTP/WebSocketサービスを構築するための、高速で使いやすいFlask風C++マイクロフレームワーク。ヘッダーオンリーで利用できます。 Crowは、HTTPおよびWebSocketのWebサービスを構築するためのC++フレームワークです。ルーティングのスタイルはPythonのFlaskを手本としており、URLパターンとハンドラー関数を使ってエンドポイントを定義できるため、PythonやJavaScriptのWebフレームワークに慣れた開発者にもなじみやすい設計です。
Crow は無料で使えますか?ライセンスは?
Crow は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
Crow は今もメンテナンスされていますか?
活発にメンテナンス中。Crow の最終コミットは 2026年10月19日 です。
Crow は何に使えますか?
大規模なフレームワークを使わずに、C++で軽量なREST APIを構築する。 既存のC++アプリケーションにHTTPまたはWebSocketのエンドポイントを追加する。 Mustacheテンプレートを使って、シンプルなサーバーサイドレンダリングのページを配信する。
Crow のインストール方法は?
READMEにリンクされているセットアップガイドを開きます crow.hをインクルードし、READMEのHello Worldの例をビルドします
Crow はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/CrowCpp/Crow

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

関連プロジェクト