No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-15 12:02:03 +00:00
.forgejo/workflows Read the SPL lines from the marketplace instead of cloning splent_catalog 2026-10-06 23:00:11 +02:00
index.json chore: rebuild marketplace index 2026-10-15 12:02:03 +00:00
README.md README and registry name the forge the index build reads 2026-10-09 19:50:00 +02:00
registry.toml README and registry name the forge the index build reads 2026-10-09 19:50:00 +02:00

splent_index

The published SPLENT marketplace index.

index.json is a regenerable cache derived from the real sources of truth. Each feature's auto-generated [tool.splent.contract] is read from pyproject.toml at its latest released tag, and the SPL lines (UVL variability models) come from the marketplace at https://marketplace.splent.io, each at the DOI it publishes. Nothing here is edited by hand. If the index is ever stale or wrong, it is simply rebuilt.

How it works

  • Publishing a feature means releasing it. splent feature:release tags the repo, and this index picks the tag up on the next build. There is no upload, no login, and no publish API.
  • Publishing an SPL goes through the marketplace. splent spl:publish sends the model to the marketplace, which publishes it on UVLHub and records its DOI. This index picks the line up from the marketplace's public /api/v1/spls on the next build.
  • The build is one CLI command. CI runs splent marketplace:index --registry registry.toml --output index.json on every push to main, every 6 hours and on demand, then commits index.json back. A push that only changes index.json does not trigger it again.
  • Third-party features are curated, not uploaded. Host your feature in your own org on git.splent.io, which is the forge the build reads, and release it there with splent feature:release. Then open a pull request adding your org or repo to registry.toml. The indexer reads each contract at its latest tag on every build.

Consuming the index

The marketplace web app reads this file by default. The splent CLI (feature:search, feature:info) reads the workspace copy that splent marketplace:index writes, and this file only when SPLENT_INDEX_URL points at it. Point a workspace at the published copy like this.

SPLENT_INDEX_URL=https://git.splent.io/splent-io/splent_index/raw/branch/main/index.json

Or build a copy from your workspace with splent marketplace:index --local.