{"id":20234302,"url":"https://github.com/fffaraz/qtwebapp","last_synced_at":"2025-06-17T14:34:40.641Z","repository":{"id":37550372,"uuid":"89411700","full_name":"fffaraz/QtWebApp","owner":"fffaraz","description":"HTTP server library in C++, based on Qt Framework","archived":false,"fork":false,"pushed_at":"2024-05-29T06:01:33.000Z","size":227,"stargazers_count":191,"open_issues_count":2,"forks_count":88,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-05-20T02:06:15.111Z","etag":null,"topics":["cpp","http","qt","server","webserver"],"latest_commit_sha":null,"homepage":"http://stefanfrings.de/qtwebapp/index-en.html","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fffaraz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-25T22:13:34.000Z","updated_at":"2025-05-18T14:14:46.000Z","dependencies_parsed_at":"2025-03-24T16:10:59.133Z","dependency_job_id":"84ca8f1d-6a07-4b70-a82d-a38582123ec0","html_url":"https://github.com/fffaraz/QtWebApp","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/fffaraz/QtWebApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffaraz%2FQtWebApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffaraz%2FQtWebApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffaraz%2FQtWebApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffaraz%2FQtWebApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fffaraz","download_url":"https://codeload.github.com/fffaraz/QtWebApp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fffaraz%2FQtWebApp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260379663,"owners_count":23000122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","http","qt","server","webserver"],"created_at":"2024-11-14T08:09:47.977Z","updated_at":"2025-06-17T14:34:35.626Z","avatar_url":"https://github.com/fffaraz.png","language":"C++","readme":"# QtWebApp HTTP Server in C++\n\nFork from Stefan's QtWebApp: http://stefanfrings.de/qtwebapp/index-en.html\n\nQtWepApp is a HTTP server library in C++, inspired by Java Servlets. For Linux, Windows, Mac OS and many other operating systems that the Qt Framework supports.\n\nQtWebApp contains the following components:\n\n* HTTP(S) Server\n* Template Engine\n* File Logger\n* These components can be used independently of each other.\n* The logger improves disk space and performance by retaining debug messages in memory until an error occurs. No debug messages are written as long everything works fine. Changes to the configuration of the logger become active automatically without program restart. A very small example:\n\n### Usage\n\nThis short example demonstrates how to use the library:\n\n```C++\n// The request handler receives and responds HTTP requests\nvoid MyRequestHandler::service(HttpRequest\u0026 request, HttpResponse\u0026 response)\n{\n    // Get a request parameters\n    QByteArray username = request.getParameter(\"username\");\n\n    // Set a response header\n    response.setHeader(\"Content-Type\", \"text/html; charset=UTF-8\");\n\n    // Generate the HTML document\n    response.write(\"\u003chtml\u003e\u003cbody\u003e\");\n    response.write(\"Hello \");\n    response.write(username);\n    response.write(\"\u003c/body\u003e\u003c/html\u003e\");\n}\n\n// The main program starts the HTTP server\nint main(int argc, char *argv[])\n{\n    QCoreApplication app(argc,argv);\n\n    new HttpListener(\n        new QSettings(\"configfile.ini\",QSettings::IniFormat,\u0026app),\n        new MyRequestHandler(\u0026app),\n        \u0026app);\n\n    return app.exec();\n}\n```\n\n### Tutorial\n\n* http://stefanfrings.de/qtwebapp/tutorial/index.html\n\n### API documentation\n\n* http://stefanfrings.de/qtwebapp/api/index.html\n\n### See also\n\n* https://github.com/StefanFrings/QtWebApp\n* https://github.com/azadkuh/qhttp\n* https://github.com/BoostGSoC14/boost.http\n* https://github.com/etr/libhttpserver\n* https://github.com/msrd0/QtWebApp\n* https://github.com/nikhilm/qhttpserver\n* https://github.com/nitroshare/qhttpengine\n* https://github.com/samiavasil/QtWebApp\n* https://github.com/yhirose/cpp-httplib\n* https://github.com/eidheim/Simple-Web-Server\n* https://gitlab.com/eidheim/Simple-Web-Server\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffffaraz%2Fqtwebapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffffaraz%2Fqtwebapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffffaraz%2Fqtwebapp/lists"}