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).

Deployment Modes
| Mode | Entry point | HTTP server | Threading | Best for |
|---|---|---|---|---|
| Desktop GUI | TKStart.Start | Indy (TKWebServer) | Thread pool (default 20) | Development, debugging, single-user |
| Windows Service | TKStart.Start | Indy (TKWebServer) | Thread pool (default 20) | Production standalone |
| Console | Kitto.Console.Start | Indy (TKWebServer) | Thread pool (default 20) | Docker, headless servers |
| IIS (ISAPI DLL) | Web.Win.ISAPIApp | IIS via WebBroker | IIS thread pool | Enterprise Windows hosting |
| Apache module | Web.ApacheApp | Apache via WebBroker | Apache thread pool | Linux/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:
- Standalone (Desktop GUI)
- Windows Service
- Console (Headless)
- ISAPI (IIS) — step-by-step IIS setup with Application Pool, handler mapping, permissions
- Apache Module
- Desktop Embedded (WebView2)
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.HandleRequestKitto.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).
