Skip to content

docs: promote the 0.13 documentation sweep and new dashboard screenshots - #254

Merged
dvcdsys merged 10 commits into
mainfrom
develop
Aug 16, 2026
Merged

docs: promote the 0.13 documentation sweep and new dashboard screenshots#254
dvcdsys merged 10 commits into
mainfrom
develop

Conversation

@dvcdsys

@dvcdsys dvcdsys commented Aug 16, 2026

Copy link
Copy Markdown
Owner

Promotion of #252 and #253 to main.

Publishing this deploys the site from main and updates the install-server.sh that the install one-liner serves raw from main.

What goes live

#252 — the words. Two shipped changes, the SQLite vector store (server/v0.13.0) and cix.app, had never reached the documentation. The two that mattered most:

  • doc/TEAM_DEPLOYMENT.md told operators to back up /data/chroma, which since 0.13 is the frozen rollback tree — the live vectors are in /data/vectors. Following it produced a backup with no index in it.
  • doc/SETUP_MACOS_NATIVE.md opened with "for full Metal acceleration you must run cix-server natively", which cix.app has made false. The app now leads every place a Mac install is described, and that doc is explicitly the from-source path.

Plus: image sizes re-measured from Docker Hub and the GitHub releases API (the same CPU image was documented as ~21, ~40 and ~100 MB in three files; it is 81 MB), nine missing env vars in CONFIG_REFERENCE.md, the third tag stream in RELEASES.md, the Runtime settings / Resources split in DASHBOARD.md, and three code comments that still justified their package with "the vector store is an in-memory database".

#253 — the pictures. The four screenshots in the README and on the docs page predated the cream & ink rewrite. Re-shot on a throwaway server with a synthetic ACME index — real indexing, a real semantic hit, a real idle-memory figure — plus two new ones for the search page and Server → Resources.

Not included

site/src/shared/versions.js is untouched: it already advertises the newest tags (server 0.13.0, CLI 0.10.2, mac 0.1.1), and policy is that the site may only claim an already-tagged release.

🤖 Generated with Claude Code

dvcdsys and others added 10 commits August 16, 2026 12:04
The vector store moved into SQLite and the Mac got an app; the docs kept
describing the world before both. The two worst were not stylistic:

- TEAM_DEPLOYMENT told operators to back up /data/chroma, which since
  0.13 is the frozen rollback tree. Following it produced a backup with
  no index in it. The live store is /data/vectors.
- SETUP_MACOS_NATIVE opened with "for full Metal acceleration you must
  run cix-server natively", which cix.app has made false — it ships a
  Metal server and installs it without a toolchain. That doc is now
  explicitly the from-source path, and the app leads everywhere a Mac
  install is described.

Numbers were being copied doc-to-doc rather than measured, so the same
CPU image was ~21 MB, ~40 MB and ~100 MB in three files. Every size here
is now read from the source: Docker Hub reports 81 MB (amd64) and 73 MB
(arm64) for the CPU image and 1077 MB for CUDA; the GitHub release
reports 37.2 MB for the macOS runtime and 3.9 MB for the DMG.

Also: CONFIG_REFERENCE calls itself the authoritative list and was
missing nine variables; RELEASES knew two of the three tag streams and
had no procedure for cutting the third; DASHBOARD predated the
Runtime settings / Resources split and named two pages by labels the
sidebar no longer uses; UPDATES said cix does not self-update, which the
app does; SEARCH_ALGORITHM promised a transaction spanning the vector
store and the FTS mirror, which is not possible across two database
files and never was.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…store

The docs page introduced cix.app as "a second way in", after the
installer section whose native mode it has replaced — so a Mac visitor
was routed into a from-source build (Go, Node, Xcode CLT) to get a
server the app installs for them. The install section now opens with the
app and says which of the following steps it has already done.

The Storage table still described CIX_CHROMA_PERSIST_DIR as the vector
store and had no row for the store that actually holds the vectors.
Adds CIX_VECTORS_DIR, CIX_VECTOR_MMAP_SIZE, CIX_BIND_ADDR and the
database-maintenance variables, plus the three admin route groups
shipped since (resources, database, schedules).

The landing page never mentioned the app at all, and its only resource
claim was about the model — nothing told a prospective self-hoster what
memory to budget, which since 0.13 is the good news: tens of megabytes
at idle whatever the index size. Folded into the existing card rather
than added as a seventh, which would have left a hole in a grid of three.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Three doc comments justified their code by "the vector store is an
in-memory database — chromem loads every document at startup and never
evicts". That reason is gone, and each sat in a file whose neighbouring
comments had already been corrected, so they read as contradictions:
maintenance reclaims disk now, not RAM; VectorStoreUsage is a query
rather than a free read of a process image; and Resources leads with
system RSS precisely because the Go heap no longer describes the
footprint.

install-server.sh gets four informational lines on Apple Silicon. It
still defaults to the from-source build there, and that default is
unchanged — but announcing nothing about the app to someone who ran the
one-liner is the same staleness this branch is removing from the docs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
docs: bring every surface back in line with 0.13 and the macOS app
The four screenshots on the site and in the README were taken on
2026-07-20, three weeks before the frontend rewrite landed. Every pixel
of chrome in them is from a design system that no longer exists, in a
walkthrough whose whole job is to show the reader what they are about to
see on their own screen.

Shot on a throwaway server built from this branch: an isolated data
directory, an admin account at an example.com-style address, three
synthetic ACME repositories written for the purpose, and a real index
over them — 27 files, 109 chunks. Nothing is mocked; the search result
is a genuine semantic hit at 0.61, and the memory figure is a genuine
idle process. The server and its data were deleted afterwards, so the
key visible in the "API key created" dialog is a credential to nothing,
and the caption now says that rather than claiming a revocation nobody
can verify.

Two screens that never had a picture get one: the search page, next to
the min-score table that explains its slider, and Server → Resources,
next to the paragraph about it — that screen is where the 0.13 memory
story is visible, and describing it in prose while showing nothing was
the weaker half of this page.

Captures are 2x of a 1280 CSS px viewport, downscaled to 1800 wide; the
width/height attributes match the files exactly, so nothing reflows
while they load.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The first pass ran on 21850 because 21847 was taken by a live server, so
every screenshot carrying a host — the Home onboarding, the connect
command in the "API key created" dialog, the footer — advertised a port
that appears nowhere else in the documentation. A reader following the
walkthrough would have had to wonder which of the two was wrong.

Same server, same synthetic ACME index, same method; only the port
differs. The API keys shot is 56 px taller, and its height attribute
moves with it so the declared size still matches the file.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
docs(site): re-shoot the dashboard screenshots on the new design
The Mac app used to be a parenthetical inside a curl command written for
Linux. It is now one of three tabs — macOS, Docker, Source — preselected
by the visitor's platform, with the shared steps (index, agent, other
machines) below them, since only the install differs.

The macOS tab leads with a replica of the launcher panel playing a real
first launch: the setup prompt, the runtime download, the credentials it
hands you, the cold start, and then one setting changed in the order the
app changes it — click, confirm, restart, new state. The markup and tokens
are transcribed from cli/launcher/panel.html and the dialog wording from
firstrun_darwin.go and menu_darwin.go, so it stays a picture of the app
rather than an impression of it. Allow Network Access is the setting it
demonstrates because it is the one whose effect the panel shows: the
caption goes from "localhost only" to "reachable on your network".

The download button resolves the current release itself. GitHub's
/releases/latest/download shape cannot work here — "latest" on this repo
is the server stream, which ships far more often, and the DMG filename
carries its version — so the href is built from MAC_APP_VERSION and needs
no JavaScript, and mac-release.js then upgrades it in the browser with the
same query the app's own updater runs (cli/internal/release), falling back
silently on a rate limit or an offline visitor. ci-site.yml now gates
MAC_APP_VERSION against the newest mac/v* tag, because that static link is
exactly what the fallback path serves and a stale constant is a 404.

connect-src gains api.github.com for that lookup.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…tabs-eb66c7

feat(site): Quick start as macOS / Docker / Source tabs, with a live download link
@dvcdsys
dvcdsys merged commit 4b6f7ac into main Aug 16, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant