The Registry
The Rux registry hosts published packages. It is browsable at rux-lang.dev/packages and
served programmatically from https://api.rux-lang.dev. Reading from it — browsing, searching,
downloading, installing — needs no account.
Finding a package
The registry home is the catalog. Search matches package names, namespaces, descriptions and keywords; an empty query browses everything. Narrow the results by namespace, keyword or package type, and order them by relevance, name, total or recent downloads, most recently updated, or most recently added.
Search is literal rather than fuzzy. Punctuation and wildcard characters are treated as text, so
http-client searches for that phrase instead of being read as a pattern.
Packages also carry keywords, which are a good way into a subject area when you do not yet know what a package is called.
The package page
Each package has a page at /packages/<namespace>/<package> showing:
- every published version, newest first, with yanked releases marked;
- the manifest metadata of the selected release — description, authors, keywords, license, repository and homepage links, and the minimum Rux version it needs;
- its dependencies and the packages that depend on it;
- the README as published, and the license file when the manifest names one;
- the SHA-256 checksum and byte size of the release archive; and
- download statistics over the last thirty days and all time.
Everything shown comes from the release that was uploaded. The registry does not edit or re-render what you publish.
Installing from the registry
Add a dependency by its qualified identity and install it:
rux add Rux/Io@^1.0.0
rux install
rux add records the entry in Rux.toml; rux install downloads it and everything it
depends on into the shared package store. See
Dependencies for requirement syntax and updating.
Identity is case-insensitive
Registry lookup lowercases ASCII letters and folds _ to -, so Rux/My_Pkg and rux/my-pkg are the
same package. Tools and pages preserve the spelling an author chose for display. This is described in
full under Namespaces.
Availability
The registry is a live service, so registry-backed commands need network access. A package already in your local store builds offline; workspace members resolve locally and never consult the registry at all.
Dependencies
Dependencies are other packages your project builds against. They are declared in the [Dependencies] table of Rux.toml and managed with the rux command-line tool.
Namespaces
A published package is identified by two parts: a namespace and a name. The namespace is the account or organisation that owns the package, so Rux/Io and Acme/Io are different packages that happen to share a name.