What is Wt ?
Wt is a C++ library for developing web applications. It consists of:
- libwt, a widget/rendering library
- libwthttp, an (async I/O) HTTP/WebSockets server
- libwtfcgi, a FastCGI connector library (Unix)
- libwtisapi, an ISAPI connector library (Windows)
- libwttest, a test connector environment
It also contains a C++ ORM, which can be used in a web application
(obviously), but can also be used on its own:
- libwtdbo, a C++ ORM
- libwtdbopostgres, PostgreSQL backend
- libwtdbosqlite3, Sqlite3 backend
- libwtdbomysql, MySQL and MariaDB backend
- libwtdbomssqlserver, Microsoft SQL Server backend
- libwtdbofirebird, Firebird backend
For more information, see the homepage.
Dependencies
To build Wt from source you will need at least
CMake, boost,
and a C++ compiler like GCC, Clang or MSVC. See the
minimum dependency versions
for an explanation about which versions Wt supports.
Optionally, you may want to add:
-
OpenSSL for SSL and WebSockets support in
the built-in httpd, the HTTP(S) client, and additional cryptographic
hashes in the authentication module
-
Haru PDF library which is used for painting to PDF
-
GraphicsMagick which is used for painting
to PNG, GIF (on Windows, Direct2D can be used instead)
-
PostgreSQL for the PostgreSQL Dbo backend
-
MySQL or MariaDB for the MySQL Dbo backend
- An ODBC driver
for the Microsoft SQL Server Dbo backend, and unixODBC on Unix-like platforms
-
Firebird for the Firebird Dbo backend
-
Pango for improved font support in PDF and raster
image painting. On Windows, DirectWrite can be used instead.
-
ZLib for compression in the built-in httpd.
For the FastCGI connector, you also need:
Building
Generic instructions for Unix-like
platforms
or Windows
platforms.
Bug Reporting
Bugs can be reported here
http://redmine.webtoolkit.eu/projects/wt/issues/new
Demos, examples
The homepage, itself a Wt application,
contains also various examples.
License
Wt is available under two licenses:
- the GNU General Public License, Version 2, with OpenSSL exception. Only version 2 of the GPL applies. See the
LICENSE
file for more information.
- a commercial license, which does not require you to distribute the source code of your application. Request a quotation online or contact [email protected] for more information.
See doc/licenses.md
for an exhaustive list of the licenses
used by Wt, source code from external sources included in Wt
and common (optional) external dependencies.