Purpose: Discuss what one needs to do to create a [starkit] for a script only [extension]. 1. why would someone bother wrapping a tcl extension into a starkit? The idea is to end up with a single file which contains all the information needed for an extension. Ideally, at some point in the future, a Tcl application might say package require FunnyStuff and Tcl would find FunnyStuff-1.7/funnystuff.kit , mount the starkit, and automatically load the package into the interpreter so the enclosed commands might be used by the program. 1. But why a starkit? Well, right now, people distribute extensions via a tar or zip file. Typically, one must at least extract the files from the archive, and, in some/many cases, then one must do some kind of ''install'' process to copy the files over to the destination, install the documentation and demos, and so forth. 1. Now that you mention it, what about the docs and the demos? Well, that's the part of the idea I've not quite figured out. I mean, sure, one could create the .kit so that if you ran it from the command line, you would get a demo program and hyperlink documentation set. But that format, at least for doc, is less useful than having the docs all in one place, capable of being searched when you don't know what extension holds the functionality you seek. Then there's the general frustration of having to look all over the place for demo/examples of the extensions. Some extensions install the demos, some don't, and some don't even have extensions. It would be so lovely if tcl came with a framework where an extension, when installed, could install demos of its commands, widgets, etc. so that the user might invoke a single demo top level program and all the registered demos were available. I currently doubt there's a single good solution to address all of these problems. 1. Well, is there an example of how one might create a starkit extension command? I don't know if anyone has done the entire thing. Certainly the [starkit distribution archive] has things like [critcl], [oomk], [kitten], [tdom], [tls]. However, none of these are pure tcl - kitten has some tcl extensions in it. 1. So, how do I get started? ---- [Category Tclkit]