Tk is een toolkit waarmee de productie van een
grafische gebruikersinterface wordt ondersteund voor de scripttaal
Tcl. Tk is oorspronkelijk ontwikkeld door
John K. Ousterhout die eveneens de bij Tk gebruikte scripttaal
Tcl ontwikkelde. Tegenwoordig is Tk formeel een
package dat in de Tcl omgeving kan worden geladen. In Tcl 8.5 is ook Tile beschikbaar die modernere widgets ondersteund. Er zijn bindingen voor andere programmeertalen ontwikkeld, zodat Tk ook gebruikt kan worden in bijvoorbeeld
Perl,
Ruby en
Python. Tk was oorspronkelijk alleen beschikbaar voor
Unix, maar er kwam al snel een versie voor vele platforms waaronder
Windows en
Apple Macintosh bij.