Central registry of third-party packages and extensions for Tcl/Tk.
Visit the web interface
Search, filter and explore all available packages with an easy-to-use interface.
- Full-text search
- Filter by tags
- Sort by popularity, recent updates, or name
- Direct links to repositories and documentation
Submit a PR adding your package to packages.json. The registry is automatically rebuilt daily.
| Field | Type | Description |
|---|---|---|
name |
string | Package name (no spaces) |
sources |
array | Array of source objects |
sources[].url |
string | Repository URL |
sources[].method |
string | git or fossil (optional) |
sources[].web |
string | Documentation URL (optional) |
sources[].artifacts |
string | This specifies the URL where the built releases, tarballs, or binaries are hosted. (optional) |
sources[].author |
string | array | Package author(s). Single name as string, or multiple as array of strings (["author1" , "author2", "..."]) |
sources[].extension |
boolean | true if this is a compiled (C/C++/etc...) extension (requires build or binaries), false or omit for pure Tcl scripts (optional) |
sources[].license |
string | SPDX license identifier |
tags |
array | Keywords for categorization |
description |
string | Short description |
{
"name": "mypackage",
"sources": [
{
"url": "https://github.com/user/mypackage",
"method": "git",
"web": "https://user.github.io/mypackage",
"author": "John Doe",
"license": "MIT"
}
],
"tags": ["json", "parser", "utility"],
"description": "Fast JSON parser for Tcl"
}{
"name": "mypackage",
"sources": [
{
"url": "https://github.com/tcltk/mypackage",
"method": "git",
"author": "Tcl Community",
"license": "BSD-3-Clause"
},
{
"url": "https://core.tcl-lang.org/mypackage",
"method": "fossil",
"author": "Tcl Community",
"license": "MIT"
}
],
"tags": ["official", "library", "core"],
"description": "Standard Tcl library"
}Note
The web field is optional and points to documentation if different from the repository url.
The method field is optional, used only if the url is a GitHub repository or a Fossil repository.
Please open an issue at registry/issues
This repository uses GitHub Actions to:
- Validate packages.json on every PR.
- Generate packages-meta.json daily (metadata, stats, validation).
The registry format draws inspiration from modern package registries (npm, Cargo, Nim) while being specifically adapted for the Tcl/Tk ecosystem.
-
Tcl-Related-Link — An exhaustive, well-organized collection of Tcl/Tk links including books,
tools, extensions, and language bindings. A must-bookmark for any Tcl developer. -
Andreas Kupries' Tcl/Tk repository mirror — A personal mirror maintained by Andreas Kupries,
a Tcl Core Team member, Andreas is notably one of the main authors of Tcllib. -
Public Tcl Package Repository — A community-driven public repository offering a curated collection
of Tcl packages, open to contributions and collaboration.
This registry is dedicated to the public domain under CC0 1.0 Universal.