[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. | | [ATWF] | ? | Tcl 8.6, [TDBC] | ? | ? | An [MVC] web framework project. | | [EmberWeb] | BSD | Tcl 8.5 | Work in progress, active | Routing. | A simple plain Tcl Web framework for small systems. | | [FastWeb] | proprietary commercial | ? | Discontinued | | Appears to be dead. | | [HereTcl] | ? | 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. | | http://www.rivetweb.org/%|%Rivetweb%|% | Apache | [Rivet] | Production-ready | plugin handlers can be written separately for different sources of data (DBMS, Web services etc) and different formats/protocols (JSON, simple text...) | XML-based templating engine | | [Spindle] | ? | [XOTcl] | Alpha, last updated in 2011 | | An MVC-style web framework. | | [Tanzer] | MIT | [TclOO] | Last updated 2015-12-18. | 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 | | | | [Wapp] | BSD | Tcl 8.6 | In production as of 2018, maintained | Complete app in a single TCL file, small easy-to-learn API, CGI or SCGI or HTTP | A simple, lightweight yet robust and secure framework for writing web applications implemented as a single file of TCL | | [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), pluggable template engines, responsive design, themable, 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] ----- See also: * [application server] * [Web servers which provide native Tcl support] <>Internet | Web | Dev. Tools