awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
CrowCpp avatar

CrowCpp/Crow

0
View on GitHub↗
4,721 stars·510 forks·C++·other·15 viewscrowcpp.org↗

Crow

Crow is a C++ web framework for building HTTP servers, providing routing, a middleware pipeline, JSON serialization, and WebSocket support. It enables developers to define typed route handlers that extract URL parameters at compile time, return structured JSON responses, and manage real-time bidirectional communication.

The framework distinguishes itself with compile-time route pattern parsing and typed argument binding, which eliminate runtime parsing overhead for URL parameters. Its event loop runs on Boost.Asio, and handler execution can be offloaded to a configurable thread pool to keep I/O responsive. A built-in Mustache-inspired template engine supports server-side rendering of dynamic HTML pages.

Common web tasks such as parsing JSON request bodies, handling multipart form data for file uploads, authenticating requests through the middleware pipeline, and restricting HTTP methods are all supported. The middleware mechanism allows custom processing steps—like logging or access control—to be inserted into the request lifecycle.

Features

  • C++ Web Frameworks - A high-performance C++ web framework for building HTTP servers with routing and middleware.
  • Compile-Time Parameter Bindings - Binds URL path segments to typed C++ function arguments at compile time for type-safe parameter extraction.
  • Middleware-Based Request Pipelines - Implements a configurable middleware pipeline for processing cross-cutting concerns on incoming requests.
  • C++ HTTP Server Libraries - A C++ library that handles HTTP requests and responses with route matching and parameter extraction.
  • Type-Safe Parameter Mapping - Provides type-safe extraction of URL parameters with compile-time type checking for route handlers.
  • Request Middleware - Provides a middleware system to insert custom processing logic like authentication and logging into request handling.
  • Route Pattern Parsers - Parses URL route patterns at compile time for typed parameter extraction and zero-runtime overhead.
  • Asynchronous Event Loops - Provides an asynchronous event loop for non-blocking I/O operations and timer management.
  • Route-to-Callback Mapping - Associates URL patterns with functions that produce HTTP responses including text and JSON.
  • Middleware Pipelines - Inserts custom processing steps like authentication and logging into the request-response lifecycle.
  • Cross-Cutting Concerns - Uses the middleware pipeline to enforce cross-cutting policies such as authentication and logging across routes.
  • Server-Side REST API Frameworks - Provides a server-side framework for building REST APIs that accept JSON and return structured responses.
  • Route Handlers - Maps URL paths to handler functions for custom request processing logic.
  • URL Parameter Extraction - Extracts dynamic path segments from URLs and delivers them as typed arguments to route handlers.
  • Thread-Pooled - Offloads route handler execution to a configurable thread pool to keep I/O responsive.
  • JSON Serialization Libraries - Automatically parses and serializes JSON data in route handlers and responses using Boost.JSON.
  • JSON Response Serializers - Serializes structured data into JSON format for HTTP response bodies.
  • WebSocket Servers - Manages persistent bidirectional WebSocket connections for real-time communication in a C++ server.
  • JSON Serialization - Converts JSON request bodies into native objects and serializes responses back to JSON automatically.
  • Real-Time Web Communication - Manages persistent bidirectional WebSocket connections for real-time data exchange.
  • JSON Serialization - Ships built-in JSON serialization and deserialization for structured data in HTTP responses and requests.
  • Credential Authentication - Validates credentials from the Authorization header to authenticate incoming HTTP requests.
  • Server-Side Template Rendering - Generates dynamic HTML pages by processing Mustache-inspired templates with server-side data.
  • HTML Template Renderers - Generates dynamic HTML pages by processing templates with route data.
  • Logic-less Template Engines - Provides a logic-less Mustache-inspired template engine for server-side HTML rendering.
  • Multipart Form Parsing - Parses multipart/form-data requests to extract uploaded files and form fields from HTTP bodies.
  • Real-Time Communication - Manages persistent bidirectional WebSocket connections for low-latency real-time data exchange.
  • Web Development - Micro-framework for Web services.
  • Web Frameworks - Microframework for web services with Flask-like routing.

Star history

Star history chart for crowcpp/crowStar history chart for crowcpp/crow

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does crowcpp/crow do?

Crow is a C++ web framework for building HTTP servers, providing routing, a middleware pipeline, JSON serialization, and WebSocket support. It enables developers to define typed route handlers that extract URL parameters at compile time, return structured JSON responses, and manage real-time bidirectional communication.

What are the main features of crowcpp/crow?

The main features of crowcpp/crow are: C++ Web Frameworks, Compile-Time Parameter Bindings, Middleware-Based Request Pipelines, C++ HTTP Server Libraries, Type-Safe Parameter Mapping, Request Middleware, Route Pattern Parsers, Asynchronous Event Loops.

What are some open-source alternatives to crowcpp/crow?

Open-source alternatives to crowcpp/crow include: ipkn/crow — Crow is a minimalist C++ micro web framework designed for building fast web servers and REST APIs. It provides a… dodyg/practical-aspnetcore — This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of… answerdotai/fasthtml — FastHTML is a full-stack Python web framework designed for building interactive web applications using pure Python. It… encode/starlette — Starlette is an asynchronous web framework and toolkit for building high-performance web services based on the ASGI… an-tao/drogon — Drogon is a high-performance C++ HTTP web framework and asynchronous web server designed for building web applications… vibora-io/vibora — Vibora is an asynchronous Python web framework and built-in HTTP server designed for building high-performance web…

Open-source alternatives to Crow

Similar open-source projects, ranked by how many features they share with Crow.
  • ipkn/crowipkn avatar

    ipkn/crow

    7,622View on GitHub↗

    Crow is a minimalist C++ micro web framework designed for building fast web servers and REST APIs. It provides a lightweight toolkit for web development in C++, offering core routing and request handling capabilities. The framework includes a built-in JSON parser for converting strings into structured data and an HTML template engine for generating dynamic web pages on the server. It also functions as a WebSocket server library to enable bidirectional, real-time communication between servers and web clients. Additional capabilities include a middleware-based request pipeline for executing sh

    C++
    View on GitHub↗7,622
  • dodyg/practical-aspnetcoredodyg avatar

    dodyg/practical-aspnetcore

    10,382View on GitHub↗

    This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro

    C#asp-net-coreaspnet-coreaspnetcore
    View on GitHub↗10,382
  • answerdotai/fasthtmlAnswerDotAI avatar

    AnswerDotAI/fasthtml

    6,846View on GitHub↗

    FastHTML is a full-stack Python web framework designed for building interactive web applications using pure Python. It functions as an HTMX integration framework and a Python HTML domain-specific language, allowing developers to generate HTML structures using native objects and functions instead of external templating files. The framework is distinguished by its native support for real-time bidirectional communication via WebSockets and Server-Sent Events, enabling server-side updates to be pushed to the browser without full page reloads. It further integrates identity management through OAut

    Jupyter Notebook
    View on GitHub↗6,846
  • encode/starletteencode avatar

    encode/starlette

    12,397View on GitHub↗

    Starlette is an asynchronous web framework and toolkit for building high-performance web services based on the ASGI specification. It serves as a lightweight foundation for creating web applications with a focus on asynchronous request and response handling. The framework provides specialized toolkits for managing persistent bidirectional WebSocket communication and an asynchronous HTTP server toolkit for routing and middleware. It distinguishes itself by offering a non-blocking background task queue that executes functions after a response has been sent to the client. The project covers a b

    Python
    View on GitHub↗12,397
See all 30 alternatives to Crow→