Small but Powerful and Efficient
TreeFrog Framework is a high-speed and full-stack C++ framework for developing Web applications, which supports HTTP and WebSocket protocol.
Web applications can run faster than that of scripting language because the server-side framework was written in C++/Qt. In application development, it provides an O/R mapping system and template systems on an MVC architecture, aims to achieve high productivity through the policy of convention over configuration.
- High performance - Highly optimized Application server engine of C++.
- O/R mapping - Conceals complex and troublesome database accesses
- Template system - ERB-like template engine
- Support for many DB - MySQL, PostgreSQL, ODBC, SQLite, MongoDB, Redis, etc.
- Cross-platform - Same source code can work on Windows, macOS and Linux
- Support WebSocket - Providing full-duplex communications channels
- Generator - Automatically generates scaffolds and Makefiles
- Less resource - Stable operation even on Raspberry Pi
- OSS - New BSD License
Selecting TreeFrog Framework
It is said that there is a trade-off relationship between development efficiency and operation speed in web application development, is it really true?
There is not such a thing. it is possible to develop efficiently by providing convenient development tools and excellent libraries from the framework and by specifying specifications to minimize the configuration file.
In recent years, cloud computing has emerged, the importance of Web applications is increasing year by year. Although it is known that the execution speed of the script language decreases as the amount of code increases, C++ language can operate at the fastest speed with a small memory footprint and does not decrease execution speed even as the amount of code increases.
Multiple application servers running in scripting language can be aggregated into one without degrading performance. Try TreeFrog Framework which combines high productivity and high speed operation!
Feb. 11, 2020
TreeFrog Framework version 1.28.0 (stable) release New!
- Implemented to add a SameSite attribute to cookie.
- Modified to add a max-age value to cookie.
- Fix a bug of listing available controllers.
- Fix a bug of showing a port number by -l option.
- Fix a bug of content type in renderText() function.
Dec. 5, 2019
TreeFrog Framework version 1.27.0 (stable) release
- Implemented OAuth2 client. [Experimental]
- Supports for MongoDB version 3.2 and later.
- Fix a bug that timer for TSqlDatabasePool stops. #279
- Fix a bug not to set all databases to transaction state value.
- Fix a bug of execution of diff in tspawn command.
Oct. 19, 2019
TreeFrog Framework version 1.26.0 (stable) release
- Added cache modules by SQLite, MongoDB and Redis.
- Updated LZ4 compression algorithm to 1.9.2.
- Fix a compilation error on Ubuntu 19.10.
- Changed the epoll MPM from multi-thread to single thread architecture.
- Performance improvement.
July 20, 2019
TreeFrog Framework version 1.25.0 (stable) release
- Updated Mongo C driver to v1.9.5.
- Updated LZ4 compression algorithm to v1.9.1.
- Modified to set a domain in session cookie.
- Changed the default C++ config from c++11 to c++14.
- Other bugfixes and improvements.
Apr. 29, 2019
TreeFrog Framework version 1.24.0 (stable) release
- Modified to use LZ4 compression algorithm.
- Implemented functions storing data of hash type for Redis.
- Fix a bug of incorrect Content-Type returned for files with uppercase extension.
- Fix a bug of parsing form-data values included backslashes.
- Other bugfixes and improvements.
Jan. 6, 2019
TreeFrog Framework version 1.23.0 (stable) release
- Added failsafe of SQL when BEGEN/COMMIT/ROLLBACK failed.
- Fix a bug of sqlobject for session store.
- Minor changes of exception classes.
- Added log messages for query log.
- Other bugfixes.
Jun. 10, 2018
TreeFrog Framework version 1.22.0 (stable) release
- Support for CMake build of Web application.
- Support SMTP connections to older servers not supporting ESMTP.
- Fix bugs of tspawn.pro file.
TreeFrog Framework is New BSD licensed open source project and completely free to use. However, the amount of effort needed to maintain and develop new features for the project is not sustainable without proper financial backing. We accept donations from sponsors and individual donors via the following methods:
I would be pleased if you could consider donating. Thank you!
- Developers, testers, translators.