Skip to content

Web Server Configuration

A Kittox application can be deployed in several forms, as it supports Delphi's WebBroker architecture. All deployment modes share the same core engine (TKWebEngine), so your YAML metadata, controllers and business logic work identically everywhere.

You don't need a separate web server for development (although you can use one in production, as explained in the Proxy page).

Kitto Server Architecture

Deployment Modes

ModeEntry pointHTTP serverThreadingBest for
Desktop GUITKStart.StartIndy (TKWebServer)Thread pool (default 20)Development, debugging, single-user
Windows ServiceTKStart.StartIndy (TKWebServer)Thread pool (default 20)Production standalone
ConsoleKitto.Console.StartIndy (TKWebServer)Thread pool (default 20)Docker, headless servers
IIS (ISAPI DLL)Web.Win.ISAPIAppIIS via WebBrokerIIS thread poolEnterprise Windows hosting
Apache moduleWeb.ApacheAppApache via WebBrokerApache thread poolLinux/cross-platform hosting

TKStart.Start auto-detects whether the process is running as a Windows Service or as a desktop GUI application.

For detailed deployment instructions for each mode, see the dedicated pages:

The WebBroker Bridge

For ISAPI and Apache deployments, the bridge between WebBroker and the Kittox engine consists of two units:

Kitto.WebBroker.WebModule.pas — A TWebModule with a single default handler:

Incoming request → TKWebModule.DefaultHandlerAction → TKWebBrokerHandler.HandleRequest

Kitto.WebBroker.Handler.pas — Singleton that owns the TKWebEngine:

TKWebBrokerHandler.HandleRequest → TKWebEngine.SimpleHandleRequest(Request, Response, URL)

To use ISAPI or Apache, include Kitto.WebBroker.WebModule in your .dpr uses clause and set Application.WebModuleClass := WebModuleClass. No additional code is needed.

Client-side Libraries

Kittox includes all required client-side libraries (HTMX, CSS, Material Design Icons) inside its Home/Resources/ path, so you don't need to provide them separately. Icons are stored in Home/Resources/icons/{style}/ with 5 style variants (filled, outlined, round, sharp, two-tone).

Released under Apache License, Version 2.0.