Source of TeaScript Host Application from 
https://tea-age.solutions/downloads/


You need the TeaScript C++ Library either from the link above or from github (below).

Use same compile instructions as for the demo app in the TeaScript C++ Library:
https://github.com/Florian-Thake/TeaScript-Cpp-Library

Additionally:
libfmt (as header only) is mandatory. (tested with libfmt 11.1.4, 11.0.2, 10.2.1 and 10.1.1)
Libfmt can be downloaded here https://fmt.dev/latest/index.html
You only need to set the include path in your project(s) / for compilation. Detection is then done automatically.

Optional Features:

Web Preview - In order to enable the Web Preview module the following steps have to be done:
1.) Add include <TeaScriptRoot>/modules/include/
2.) Add include to the Boost Library.
3.) Add modules/WebPreview.cpp to your project compilation.
4.) Set the define TEASCRIPT_ENGINE_USE_WEB_PREVIEW to 1 in TeaScript_Main.cpp

TOML Support - for the integrated TOML Support you need the toml++ Library. (tested with 3.4.0)
You can find the toml++ library here: https://github.com/marzer/tomlplusplus 
You only need to set the include path in your project(s) / for compilation. Detection is then done automatically.
See include/teascript/TomlSupport.hpp for some more details.

GNU Readline - for a better REPL experience (Linux only, tested with GNU readline 8.2)
Source code can be found here: https://ftp.gnu.org/gnu/readline/
or here https://tea-age.solutions/downloads/

JsonAdapter - You can change the Json library which is used by TeaScript to one of nlohmann::json, RapidJson or Boost.Json.
Per default PicoJson is used and is enabled by default.
For use a different adapter you must do the following steps:
1.) Add include to <TeaScriptRoot>/extensions/include/.
2.) Add the corresponding JsonAdapter.cpp to your project, e.g., extensions/JsonAdapterNlohmann.cpp
3.) Add include for the json library of use, e.g., <rootpath>/nlohmann_3.11.3/single_inlude/
4.) Set the define TEASCRIPT_JSON_FLAVOR to the desired Json flavor, e.g., TEASCRIPT_JSON_NLOHMANN

BSON Support - Currently BSON support is only available if the used JsonAdapter is nlohmann::json (see above how to change).


Copyright (C) 2025 Florian Thake <contact |at| tea-age.solutions>.

 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License
 as published by the Free Software Foundation, version 3.
 This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
 You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/>
 
 