[framework%|%Frameworks] with which you can write web servers/applications in Tcl. **A list of web frameworks for Tcl** %| Name | License | Requirements | Status | Features | Description |% | [ActiWeb] | | [XOTcl] | Production-ready, maintained | | XOTcl based with HTTP server, client, and web framework. | | [FastWeb] | proprietary commercial | ? | Discontinued | | Appears to be dead. | | [http://puretcl.com:8080/%|%H] | ? | Tcl 8.6 | ? | | An effort to strip down Wub to its essentials. | | [jimhttp] | MIT | [Jim Tcl] | Prototype | Pure Jim Tcl HTTP server, [HTTP routing%|%routing], templates, [JSON] generation and parsing, HTML DSL, persistent key-value storage and static variable persistence. | A microframework prototype modelled after frameworks like Sinatra and Flask. | | [Mel's Internet Toolkit] | ? | [cgi.tcl] | Production-ready, last updated in 2010 | | [OpenACS] | GNU GPL | [AOLserver] or [NaviServer], a database | Production-ready, maintained | | The original Tcl web framework. Emphasises building community-oriented web sites and comes with many pre-built packages. Mature and very stable. | | [Spindle] | ? | [XOTcl] | Alpha, last updated in 2011 | | An MVC-style web framework. | | [Tanzer] | MIT | [TclOO] | Running in production, in active development | Provides a pattern-based URI router, file service, CGI, SCGI and HTTP dispatcher, and can run as a pure HTTP or SCGI service. | tanzer exists to provide an asynchronous web framework and service leveraging the inherent qualities of Tcl's event loop. | | [WebApp%|%Tcl Web Application Framework] | MIT | [Rivet%|%RivetCGI] | Production-ready but still in development, last updated in 2011 | | | | [Wibble] | The Tcl/Tk license | Tcl 8.6 | ? | HTTP server, routing (zone handlers), [WebSocket], [JSON-RPC], [SSL] | Provides routing via zone handlers. HTTP requests and responses are [dict]s. | | [Woof!] | BSD | Tcl 8.6 | Production-ready, maintained | Work over the [CGI] or [SCGI] protocols with Microsoft IIS, Apache, Lighttpd and other web servers. Provides infrastructure for views and controllers in a class-based [MVC] architecture, routing (URLs mapped to controller classes), templates ([Woof Template Format]), page localization. | An MVC web framework inspired by Ruby on Rails. | | [Wub] | BSD 3-Clause | Tcl 8.6 | Production-ready, maintained | | A pure-Tcl web server and framework that uses [coroutine%|%coroutines]. Runs this wiki. | ---- [dbohdan] 2014-10-03: The table's current format is tentative. Feel free to add new columns for data that you think will help compare the frameworks, e.g., columns for individual features. Speaking of columns, is there a way to make each column start on a new line in the source of this wiki page? What I mean is something like ====== + | c1 | c2 | c3 + ====== instead of ====== | c1 | c2 | c3 | ====== ====== 20oct2014 Gavino! You Forgot a few: aolserver ossweb naviserver apache rivet apache websh castle ====== [dbohdan] 2014-11-13: For frameworks that have their own wiki page a link to that wiki page is preferable to a direct link to the framework's website. I changed the link for Tanzer back to [Tanzer], which already contains a link to http://tanzer.io/. See also: * [application server] * [Web servers which provide native Tcl support] <>Internet | Web | Dev. Tools