vitrinka.docs

Boards, tags and diagrams

A set is the archive; a board is the surface people actually mark up. Every push already lands on one — these are the commands that shape, open, fill and share boards and keep them findable.

Turn a set into a board

A screenshots push already lands on its journey board, <project>-<branch>-<key>, and prints that URL; a document push lands as a doc card at /a/<id>. Reach for board create only when you want another slug or title, or a branching --journey tree from the same set:

vitrinka board create --title "Checkout — pass 3"
FlagWhat it does
--title / --btitleBoard title.
--slugBoard slug. Defaults to <project>-<branch>-<key>, the set's address.
--journeyBuild a branching journey tree instead of a flat flow board.
--actorX-Board-Actor attribution. Defaults to the stored operator.
--rootCapture root. Default .vitrinka/screenshots.

Find a board

list filters by the three axes a board is filed under — project, subgroup and tag — plus its type.

vitrinka board list --project myapp --type journeys
vitrinka board view checkout-pass-3
FlagWhat it does
--projectOnly boards owned by this project.
--subgroupOnly boards in this sidebar subgroup.
--typeOnly boards of this type — brainstorm, docs, journeys…
--tagsComma-separated. Prefix one with - to exclude it.
--matchHow to combine tags: all (default) or any.
--archivedInclude archived boards.

Open a board

board open opens the capture root's live board when a set exists, otherwise vitrinka home. The QR mode is for getting a board onto a tablet without typing a URL.

vitrinka board open
vitrinka board open --qr      # scan with an iPad, annotate with the Pencil
vitrinka board open --print   # just print the URL
FlagWhat it does
--qrRender the URL as a terminal QR code instead of opening it.
--printPrint the URL only.
--browserForce the https URL even when Vitrinka.app is installed.

Open in the desktop app

board edit focuses the resident Vitrinka.app on a file or project, and records the repo in the project registry so the app's project list stays current. It is macOS only and needs the Vitrinka desktop app, which ships separately from the CLI; elsewhere, or without it, you get the deep link printed.

vitrinka board edit .
vitrinka board edit --print   # print the deep link only

Put things on a board

upload puts arbitrary files on as cards. dump lands a whole directory of captures in one go — it creates the board when missing, uploads every image in name order and, when the directory carries a render-audit audit.json, composes one ledger card from it. import-chat publishes a chat transcript — an eve run or NDJSON — as a chat card.

vitrinka board upload ./report.html ./notes.md --board checkout-pass-3
vitrinka board dump ./captures/round-3 --board checkout-round-3
vitrinka board import-chat run.ndjson --board checkout-pass-3 --redact
dump flag
--boardTarget slug. Omitted: render-audit-<date>-<label>-<sha7>.
--projectOwning project when the board is created (default benchmarking).
--workspaceWrite into this workspace instead of the bound one.
--label, --titleRound label (default: the directory name) and board title.
upload flag
--boardTarget slug. Required.
--sectionLand inside the named section frame.
--anchor · --sideDock beside a card id, to its right or below.
--create-sectionCreate --section as a new frame even when its name is a near match of an existing one.

board cards rm takes cards off again — softly: they go to the board's Trash tab, where the operator can restore them. Ids take comma lists and ranges. Your own cards go straight to trash, up to 25 per call and 30% of the board; anyone else's cards, or a bigger batch, need --why with a reason of 20 characters or more.

vitrinka board cards rm checkout-pass-3 362-370
vitrinka board cards rm checkout-pass-3 412,415 --why "pass-2 duplicates, superseded by the pass-3 shots"

Share with outside people

share mints a capability link on the public share origin. The URL is the credential: whoever holds it opens the board without an account. Every link shares the whole board. --card only chooses where it opens: on that element as a document rather than on the canvas, which is how you share an artifact from its /a/<id> view. The recipient can still switch to the board and read every card on it, so keep artifacts for outside eyes on a board with nothing private beside them. Personal boards never mint.

vitrinka board share checkout-pass-3 --mode annotate --expires 7d
vitrinka board share docs-board --card 336
FlagWhat it does
--modeview (default) or annotate, which lets link holders leave feedback.
--expires24h, 7d, 30d (default) or never.
--cardElement id the link opens on, as a document. The link still grants the whole board.

Tags

The third axis beside project and subgroup.

vitrinka tag add checkout-pass-3 regression payments
vitrinka tag list
vitrinka tag remove checkout-pass-3 regression

Diagrams

import parses a file you already maintain — OpenAPI, SQL DDL or docker-compose — into a diagram; schema push introspects a live Postgres locally and pushes what it finds. Both take --section to land inside a frame and --rev for the source revision the card's ↻ micro-label shows.

vitrinka board diagram import docker-compose.yml --board checkout-pass-3
vitrinka board diagram schema push --db postgres://localhost/app --board checkout-pass-3   # psql runs locally; the URL never leaves the machine

On this page