cutelyst

A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.

Github星跟踪图

Cutelyst - The Qt Web Framework

Build Status
Windows Build status
Codacy Badge
Code Quality: Cpp
Total Alerts

A Web Framework built on top of Qt, using the simple and elegant approach of Catalyst (Perl) framework.

Qt's meta object system is what powers the core of Cutelyst, it allows for introspecting controller's methods signatures and generate matching actions that can be invoked later.

BENCHMARKS

Don't trust us on being fast, check out the most comprehensive web framework benchmarks by TechEmpower
http://www.techempower.com/benchmarks/

FEATURES:

  • Cross-platform
  • Stable API/ABI - v1 on v1.x.x branch and v2 on tagged from master
  • Pluggable Engines
    • Cutelyst-WSGI - A cross-platform and fast WSGI engine
      • HTTP/1.1 - Pipelining and Keep-Alive
      • HTTP/2 - Upgrade to H2, ALPN negotiation on HTTPS and direct H2C
      • FastCGI - Pipelining and Keep-Alive
    • uWSGI - Multiple protocols support (HTTP 1.0, FastCGI, uWSGI)
  • WebSockets
  • REST with ActionREST
  • Plugin based views
  • Dispatcher
    • Chained
    • Path
  • Plugins
    • Session
    • Authentication (with PBKDF2)
    • Authorization with RoleACL
    • StatusMessage
    • Validator (to validate user input)
    • CSRF protection
    • Memcached
    • UserAgent
  • Upload parser
  • JSON body as QJsonDocument when uploaded data is in JSON format
  • C++11
  • Chunked reponses (via QIODevice write API)
  • Request profiling/stats
  • Asynchronous processing (just don't use local QEventLoops or it will eventually crash)
  • Unit tested
  • QtCreator integration

DOCUMENTATION

Get started with our Tutorial or check the API.

COMMUNITY

The Cutelyst project IRC channel is #cutelyst on freenode.

Or you can use the Mailing List

REQUIREMENTS

  • CMake - for the build system (>= 3.1)
  • Qt - the core library of this framework (>= 5.6)

OPTIONAL

  • uWSGI - to receive and parse protocols requests (>= 1.9 recommended)

LICENSE

The library is under the LGPLv2+ and public header files, documentation and
examples are under MIT license.

主要指标

概览
名称与所有者cutelyst/cutelyst
主编程语言C++
编程语言CMake (语言数: 6)
平台
许可证BSD 3-Clause "New" or "Revised" License
所有者活动
创建于2015-06-04 04:05:28
推送于2025-05-26 18:48:47
最后一次提交2025-05-07 09:25:10
发布数89
最新版本名称v5.0.0-beta1 (发布于 2025-01-24 01:32:47)
第一版名称r0.1.0 (发布于 )
用户参与
星数0.9k
关注者数54
派生数119
提交数2.8k
已启用问题?
问题数227
打开的问题数15
拉请求数224
打开的拉请求数2
关闭的拉请求数25
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?