Last updated

Developer(s) Joseph Wang [1]
Initial release0.1 25 July 1992;30 years ago (1992-07-25) [2]
Final release
0.13 pre2 [3] / 2 April 1995;28 years ago (1995-04-02)
Written in Tcl/Tk [1]
Platform Same as Tcl/Tk
Available inEnglish
Type Web browser and HTML editor [1] [4]
License GPLv2 [3] [5]

tkWWW is an early, now discontinued web browser and WYSIWYG HTML editor [6] written by Joseph Wang at MIT as part of Project Athena and the Globewide Network Academy project. [5] [7] The browser was based on the Tcl language and the Tk (toolkit) extension [6] [8] [9] but did not achieve broad user-acceptance or market share, [10] although it was included in many Linux distributions by default. [6] Joseph Wang wanted tkWWW to become a replacement for r r n [11] and to become a "swiss army knife" of networked computing. [12]



Joseph Wang announced in July 1992 that he was developing a web browser based on Tk, and made the alpha version 0.1 publicly available. [13]

Version 0.4 integrated a much easier installation procedure, a better default color scheme, keyboard traversals and a history mechanism. [14] Version 0.5, released 8 February 1993, introduced support for multiple fonts. [15]

Version 0.6 made personal annotations compatible with xmosaic and improved the GUI. [16] [17]

With the release of version 0.7 on 1 May 1993, tkWWW became the first WYSIWYG HTML editor for X11 [18] [19] which was originally written by Nathan Torkington. [20] [21] Another improvement was the ability to start in iconic mode. [18] [22]

Version 0.8 improved the graphical user interface (GUI) and added a "reload" option. [23]

In version 0.9, the browser achieved beta status and added support for character-styling tags and for version 7.0 of Tcl, as well as partial support for image tags. [24] [25]

Version 0.11 worked successfully with RCS [ dubious ]. [26]   Based on the newly released Tk 4.0, tkWWW 0.13 was an alpha release, in order to allow for wider testing. It also added full support for inline images. [27]

Support for HTML+, a proposed successor to HTML 2, was implemented while the specification was being developed. [28]

tkWWW was extended by the GNU Guile project, to support Scheme extensions. [29]

Further development

The short-term agenda for tkWWW included an SGML parser [12] [30] [31] and the separation of the browser from the editor, [30] in order to simplify user experience. [32] The long-term plan included new functions like word processing, directory navigation, file transfer, and news and email reading. [12]


tkWWW was developed before the advent of Safe-Tcl, to allow untrusted applications to run from non-privileged accounts. Without such a safeguard, the potential for automatically executing remote scripts was a security issue. [39]

tkWWW was criticized for not supporting the mailto URI scheme, rlogin, WAIS, and HTML forms. A stop-button to interrupt the transfer of web pages was also not integrated. [40]


A diagram how tkWWW and TkWWW Robot working together. TkWWWrobot.svg
A diagram how tkWWW and TkWWW Robot working together.

Because tkWWW was based on the Tk framework, it was very easy to expand its functions and to extend its capabilities. Indeed, there were several extensions and applications based on tkWWW. [33] [41]


Phoenix was a well-known web browser and editor, created at the University of Chicago in the Biological Sciences Division, that was built on tkWWW version 0.9. [1] [42] [43]   Development began in the summer of 1993, when there weren't any easy-to-use web-page editors available. [44] Development ceased in May 1995, there being a variety of similar tools available. [42] [44]   The main new features were: improved HTML+ support, [1] [42] deeper integration of features such as copy and paste and native look-and-feel, [1] [42] and support for the Kerberos protocol by modified servers. [1] The browser was supported on MS-DOS, Microsoft Windows, Mac OS, and on Linux and other Unix systems. [1] [42] [45] Further development would have added support for BSD platforms. [1]

The short-term plan for tkWWW was to separate the editing and browsing functions, as had already been accomplished for Phoenix. [46] Inline-image support for GIFs and ISMAPs were also already integrated in the first version of Phoenix. [42]

The ability to access Multi-user Object-Oriented (MOO) or Multi-User Dungeon (MUD) servers was requested as a new package for tkWWW, and this was delivered by the Phoenix team. [47] [48] [49]

The TkWWW Robot

A screenshot of the TkWWW Robot Browsing Interface. TkWWW Robot.gif
A screenshot of the TkWWW Robot Browsing Interface.

Scott Spetka presented a paper at the Mosaic and the Web Conference in Chicago entitled "The TkWWW Robot" in October 1994. [50] [51] TkWWW robot was one of the first web crawlers and internet bots based on tkWWW. It was developed over the summer at the Air Force Rome Laboratory, with funding from the Air Force Office of Scientific Research, [52] to build HTML indexes, compile WWW statistics, collect image portfolios, etc. [52]   TkWWW robot's major advantage was its flexibility in adapting to virtually any criteria to guide its search path and to control its selection of data for retrieval. [50] [53]

The search algorithm worked by identifying "web neighborhoods" — finding logically related homepages. The bot returned a list of links in the form of bookmarks. It was limited, however, in that it could include only two links from the original homepages. [52]

System requirements and technical

tkWWW was originally developed for Unix but would run on any modern operating system where Tcl/Tk is properly installed. [6] [54] [55] To display images, tkWWW requires the xli package. [54] [55]

tkWWW has two strictly separated processes: one for the GUI, and another for network interaction and for parsing HTML. [56]   The latter is compiled C code based on the CERN libwww library. [56] The front-end GUI is written in Tcl/Tk, which is interpreted at run time. [56]

See also

Related Research Articles

<span class="mw-page-title-main">HTML</span> Hypertext Markup Language

The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It is often assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.

Scalable Vector Graphics (SVG) is an XML-based vector image format for defining two-dimensional graphics, having support for interactivity and animation. The SVG specification is an open standard developed by the World Wide Web Consortium since 1999.

<span class="mw-page-title-main">World Wide Web</span> Linked hypertext system on the Internet

The World Wide Web (WWW), commonly known as theWeb, is an information system enabling documents and other web resources to be accessed over the Internet.

<span class="mw-page-title-main">Mosaic (web browser)</span> Early web browser (1993–1997)

NCSA Mosaic is a discontinued web browser, and one of the first to be widely available. It was instrumental in popularizing the World Wide Web and the general Internet by integrating multimedia such as text and graphics. It was named for its support of multiple Internet protocols, such as Hypertext Transfer Protocol, File Transfer Protocol, Network News Transfer Protocol, and Gopher. Its intuitive interface, reliability, personal computer support, and simple installation all contributed to its popularity within the web. Mosaic is the first browser to display images inline with text instead of in a separate window. It is often described as the first graphical web browser, though it was preceded by WorldWideWeb, the lesser-known Erwise, and ViolaWWW.

<span class="mw-page-title-main">Cello (web browser)</span> Web browser

Cello is an early, discontinued graphical web browser for Windows 3.1; it was developed by Thomas R. Bruce of the Legal Information Institute at Cornell Law School. It was released as shareware in 1993. While other browsers ran on various Unix machines, Cello was the first web browser for Microsoft Windows, using the winsock system to access the Internet. In addition to the basic Windows, Cello worked on Windows NT 3.5 and with small modifications on OS/2.

A HTML editor is a program used for editing HTML, the markup of a web page. Although the HTML markup in a web page can be controlled with any text editor, specialized HTML editors can offer convenience, added functionality, and organisation. For example, many HTML editors handle not only HTML, but also related technologies such as CSS, XML and JavaScript or ECMAScript. In some cases they also manage communication with remote web servers via FTP and WebDAV, and version control systems such as Subversion or Git. Many word processing, graphic design and page layout programs that are not dedicated to web design, such as Microsoft Word or Quark XPress, also have the ability to function as HTML editors.

<span class="mw-page-title-main">WorldWideWeb</span> First web browser; renamed Nexus

WorldWideWeb is the first web browser and web page editor. It was discontinued in 1994. It was the first WYSIWYG HTML editor.

X3D is a royalty-free ISO/IEC standard for declaratively representing 3D computer graphics. File format support includes XML, ClassicVRML, Compressed Binary Encoding (CBE) and a draft JSON encoding. X3D became the successor to the Virtual Reality Modeling Language (VRML) in 2001. X3D features extensions to VRML, the ability to encode the scene using an XML syntax as well as the Open Inventor-like syntax of VRML97, or binary formatting, and enhanced application programming interfaces (APIs).

<span class="mw-page-title-main">ViolaWWW</span> Popular web browser in the early 1990s

ViolaWWW is a discontinued browser, the first to support scripting and stylesheets for the World Wide Web (WWW). It was first released in 1991/1992 for Unix and acted as the recommended browser at CERN, where the WWW was invented, but eventually lost its position as most frequently used browser to Mosaic.

<span class="mw-page-title-main">Amaya (web editor)</span> Web browser and web editor

Amaya is a discontinued free and open source WYSIWYG web authoring tool with browsing abilities.

<span class="mw-page-title-main">Line Mode Browser</span> Command-line web browser

The Line Mode Browser is the second web browser ever created. The browser was the first demonstrated to be portable to several different operating systems. Operated from a simple command-line interface, it could be widely used on many computers and computer terminals throughout the Internet. The browser was developed starting in 1990, and then supported by the World Wide Web Consortium (W3C) as an example and test application for the libwww library.

<span class="mw-page-title-main">AOLpress</span>

AOLpress is a discontinued HTML editor that was available from America Online (AOL). It was originally developed as NaviPress by the company NaviSoft before being bought by AOL. It was discontinued in 2000. However, the last version (2.0) may still be found on some Web sites for downloading.

<span class="mw-page-title-main">Libwww</span>

Libwww is an early World Wide Web software library providing core functions for web browsers, implementing HTML, HTTP, and other technologies. Tim Berners-Lee, at the European Organization for Nuclear Research (CERN), released libwww in late 1992, comprising reusable code from the first browsers.

<span class="mw-page-title-main">Tkhtml</span>

Tkhtml is a discontinued open-source browser engine written in C using the Tk widget toolkit. It was used primarily by the Html Viewer 3 (Hv3) minimalist web browser.

Extensible HyperText Markup Language (XHTML) is part of the family of XML markup languages. It mirrors or extends versions of the widely used HyperText Markup Language (HTML), the language in which Web pages are formulated.

<span class="mw-page-title-main">CSS</span> Style sheet language

Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.

<span class="mw-page-title-main">Arena (web browser)</span> Web browser and Web authoring tool for Unix

The Arena browser was one of the first web browsers for Unix. Originally begun by Dave Raggett in 1993, development continued at CERN and the World Wide Web Consortium (W3C) and subsequently by Yggdrasil Computing. Arena was used in testing the implementations for HTML version 3.0, Cascading Style Sheets (CSS), Portable Network Graphics (PNG), and libwww. Arena was widely used and popular at the beginning of the World Wide Web.

<span class="mw-page-title-main">First International Conference on the World-Wide Web</span>

The First International Conference on the World-Wide Web was the first-ever conference about the World Wide Web, and the first meeting of what became the International World Wide Web Conference. It was held on May 25 to 27, 1994 in Geneva, Switzerland. The conference had 380 participants, who were accepted out of 800 applicants. It has been referred to as the "Woodstock of the Web".

<span class="mw-page-title-main">Dave Raggett</span> English computer specialist

Dave Raggett is an English computer specialist who has played a major role in implementing the World Wide Web since 1992. He has been a W3C Fellow at the World Wide Web Consortium since 1995 and worked on many of the key web protocols, including HTTP, HTML, XHTML, MathML, XForms, and VoiceXML. Raggett also wrote HTML Tidy and is currently pioneering W3C's work on the Web of Things. He lives in the west of England.

Agora was a World Wide Web email browser and was a proof of concept to help people to use the full internet. Agora was an email-based web browser designed for non-graphic terminals and to help people without full access to the internet such as in developing countries or without a permanent internet connection. Similar to W3Gate, Agora was a server application designed to fetch HTML documents through e-mail rather than http.


  1. 1 2 3 4 5 6 7 8 9 Lavenant, Marc G.; Kruper, John A. (25–27 May 1994). "The Phoenix Project: Distributed Hypermedia Authoring" (PostScript). World Wide Web Conference 1 . University of Chicago: CERN. Retrieved 19 November 2010.
  2. 1 2 3 Wang, Joseph (25 July 1992). "tkWWW-0.1". World Wide Web Consortium. Retrieved 16 November 2010.
  3. 1 2 Wang, Joseph. "Overview". Massachusetts Institute of Technology. Archived from the original on 12 December 2012. Retrieved 16 November 2010.
  4. Vetter, Ronald J. (October 1994). "Mosaic and the World-Wide Web" (PDF). North Dakota State University . Retrieved 20 November 2010.
  5. 1 2 Cockburn, Andy; Jones, Steve (6 December 2000). "Which Way Now? Analysing and Easing Inadequacies in WWW Navigation". International Journal of Human-Computer Studies. 45: 105–129. CiteSeerX . doi:10.1006/ijhc.1996.0044.
  6. 1 2 3 4 "Red Hat Linux Unleashed rhl50.htm". Archived from the original on 4 March 2016. Retrieved 19 November 2010.
  7. Wang, Joseph. "Globewide Network Academy". Massachusetts Institute of Technology. Retrieved 17 November 2010.[ permanent dead link ]
  8. 1 2 Berners-Lee, Tim (May 1992). "May World-Wide Web News". World Wide Web Consortium. Retrieved 16 November 2010.
  9. Berners-Lee, Tim; Cailliau, Robert (23–27 September 1992). "World-Wide Web" (PostScript). World Wide Web Conference . World Wide Web Consortium. Retrieved 16 November 2010.
  10. LoVerso, John R.; Mazer, Murray S. (July 1997). "Caubweb: Detaching the Web with Tcl" (PDF). Fifth Annual Tcl/Tk Workshop. Boston, Massachusetts: USENIX. Retrieved 28 November 2010.
  11. Wang, Joseph. "tkWWW as a replacement for rrn". Massachusetts Institute of Technology. Retrieved 16 November 2010.
  12. 1 2 3 Wang, Joseph. "tkWWW TODO list". Massachusetts Institute of Technology. Retrieved 16 November 2010.
  13. Wang, Joseph (25 July 1992). "tkWWW-0.1". World Wide Web Consortium. Retrieved 24 November 2010.
  14. Wang, Joseph (18 October 1992). "Announcing tkWWW release 0.4". World Wide Web Consortium. Retrieved 16 November 2010.
  15. 1 2 3 Wang, Joseph (8 February 1993). "Announcing tkWWW Version 0.5 Alpha". Retrieved 16 November 2010.
  16. Wang, Joseph (18 March 1993). "Announcing tkWWW Version 0.6 alpha". The World Wide Web History Project. Retrieved 16 November 2010.
  17. Wang, Joseph. "Version 0.6". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  18. 1 2 3 4 Wang, Joseph (1 May 1993). "Announcing tkWWW 0.7, the first WYWSIWYG X11 HTML editor". The World Wide Web History Project. Retrieved 16 November 2010.
  19. Liu, Cricket; Peek, Jerry; Jones, Russ (December 1994). Managing Internet information services . O'Reilly Media. p.  292. ISBN   978-1-56592-062-0.
  20. Torkington, Nathan (17 April 1993). "HTML Editing". The World Wide Web History Project. Retrieved 30 November 2010.
  21. Wang, Joseph (17 April 1993). "Re: HTML Editing". The World Wide Web History Project. Retrieved 30 November 2010.
  22. Wang, Joseph. "Version 0.7". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  23. Wang, Joseph. "Version 0.8". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  24. Wang, Joseph. "Version 0.9". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  25. Wang, Joseph. "tkWWW Version 0.9 beta (" . Retrieved 22 November 2010.
  26. Wang, Joseph (26 April 1994). "ANNOUNCING tkWWW-0.11". University of Calgary . Retrieved 22 November 2010.
  27. Wang, Joseph (2 April 1995). "ANNOUNCE: Beta version of tkWWW-0.13 is available". World Wide Web Consortium. Retrieved 16 November 2010.
  28. Connolly, Dan (28 September 1999). "HTML 2.0 Materials". World Wide Web Consortium. Retrieved 16 November 2010.
  29. Lord, Thomas (July 1995). "An Anatomy of Guile The Interface to Tcl/Tk" (PostScript). Third Annual Tcl/Tk Workshop. Toronto, Ontario, Canada: Usenix . Retrieved 23 November 2010.
  30. 1 2 Wang, Joseph. "Working notes..." Massachusetts Institute of Technology. Retrieved 19 November 2010.
  31. Wang, Joseph. "tkWWW TODO list". Massachusetts Institute of Technology. Retrieved 22 November 2010.
  32. 1 2 3 Williams, Nick; Wilkinson, Tim (15 April 1994). "Experiences in Writing a WYSIWYG Editor for HTML" (PostScript). CERN. Retrieved 22 November 2010.
  33. 1 2 Fischer, Christian (15 February 1995). "Konzeption eines Werkzeugs zur Erfassung von Betreiberanforderungen an ein integriertes Netz- und Systemmanagement" (PostScript). Diplomarbeit (in German). Technische Universität München. p. 97. Retrieved 27 November 2010.
  34. 1 2 3 4 5 6 7 Wang, Joseph. "Demos of tkWWW multimedia capabilities". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  35. 1 2 3 Wang, Joseph. "History of tkWWW". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  36. Yee, Ka-Ping (3 May 1996). "Displaying Japanese on the WWW" . Retrieved 22 November 2010.
  37. TAKADA, Toshihiro. "WWW Browsers that can display Japanese". Nippon Telegraph and Telephone. Archived from the original on 8 February 1998. Retrieved 28 November 2010.
  38. Wang, Joseph. "tkWWW as a replacement for FTP". Massachusetts Institute of Technology. Retrieved 19 November 2010.
  39. Ball, Steve (10–13 July 1996). "SurfIt! - A WWW Browser" (PostScript). Fourth USENIX Tcl/Tk Workshop. Monterey, California: USENIX. Retrieved 28 November 2010.
  40. Ian S. Graham, The HTML Sourcebook: The Complete Guide to HTML, p. 327.
  41. Wang, Joseph. "tk applications". Massachusetts Institute of Technology. Retrieved 17 November 2010.
  42. 1 2 3 4 5 6 Kruper, John A.; Lavenant, Marc G.; Maskay, Manisha H.; Jones, Thomas M. (1994). "Building Internet Accessible Medical Education Software Using the World Wide Web". Proc Annu Symp Comput Appl Med Care. University of Chicago: 32–6. PMC   2247761 . PMID   7949942.
  43. Virden, Larry W. (26 July 2006). "comp.lang.tcl Frequently Asked Questions (July 26, 2006) (4/6)". SourceForge. Archived from the original on 4 April 2011. Retrieved 16 November 2010.
  44. 1 2 README of Phoenix-0.1.8 Alpha release (released 15 May 1995); available here
  45. Newberg, Lee A. (12 May 1995). "Announcing Phoenix, A Genuinely-WYSIWYG HTML Editor". The University of Chicago. Archived from the original on 2 December 1998.
  46. Mintert, Stefan (17 July 1995). "Weberknechte". Ix 08/1995 (in German). Heinz Heise. 1995 (8): 54. Retrieved 22 November 2010.
  47. Berners-Lee, Tim. "MOOs and WWW". World Wide Web Consortium. Retrieved 16 November 2010.
  48. Newberg, Lee A.; Rouse III, Richard O.; Kruper, John A. (1995). "Integrating the World-Wide Web and Multi-User Domains to Support Advanced Network-Based Learning Environments" (PDF). Proceedings of the World Conference on Educational Multimedia and Hypermedia. Graz, Austria: Association for the Advancement of Computing in Education. Archived from the original (PDF) on 4 July 2009. Retrieved 23 September 2011.
  49. Wang, Joseph; Butts, Carter; Reilly, Colman; Speh, Marcus (1993). "WWW and the Globewide Network Academy" (PostScript). Texas: Globewide Network Academy. Retrieved 28 November 2010.
  50. 1 2 Spetka, Scott (17 October 1994). "The TkWWW Robot: Beyond Browsing". National Center for Supercomputing Applications. Archived from the original on 24 July 2001. Retrieved 20 November 2010.
  51. "Submission Robots Index". Hostsun. 2002. Retrieved 20 November 2010.
  52. 1 2 3 Yang, Christopher C.; Yen, Jerome; Chen, Hsinchun (2000). "Intelligent internet searching agent based on hybrid simulated annealing" (PDF). Elsevier . Retrieved 28 November 2010.
  53. Khosravi, Fariborz; Arjomand, Tajalmolouk. "The new Era in Intelligent Agent Design Using Genetic Algorithms Approach" (PDF). Faslname-ye Ketab . National Library of the Islamic Republic of Iran (53). ISSN   1022-6451 . Retrieved 27 November 2010.
  54. 1 2 "UNIX WWW BROWSERS". University of Toronto . Retrieved 22 November 2010.
  55. 1 2 README-file of the tkWWW-0.13pre2 package.
  56. 1 2 3 Wang, Joseph. "tkWWWInternals". Massachusetts Institute of Technology. Retrieved 19 November 2010.