Skip to content

Developer CLI

LibrisLog includes a command-line tool for common development tasks. It automates pull requests, version tags, testing, and documentation.

Installation

From the repository root:

bash
cd cli
uv sync

Then run commands with:

bash
uv run llc <command>

You can also install it in your environment:

bash
uv pip install -e cli

Usage

llc docs

Build and preview the documentation site.

CommandDescription
llc docs buildBuild the VitePress site
llc docs serveStart the VitePress dev server with hot-reload
llc docs previewPreview the built site (run build first)

llc test

Run test suites with a single command.

CommandDescription
llc test backendRun backend pytest with coverage
llc test cliRun CLI pytest
llc test frontendRun frontend vitest with coverage
llc test e2eRun frontend Playwright E2E tests (Docker)
llc test allRun all four suites (backend, cli, frontend, e2e)

llc pr

Manage pull requests on GitHub.

CommandDescription
llc pr listList open pull requests
llc pr createInteractive PR creation — selects head and base branches
llc pr mergeInteractive PR merge — select from open PRs

llc tag

Create and delete semantic version tags.

CommandDescription
llc tag createInteractive tag creation — picks the branch, suggests the next version (major/minor/patch bump), creates and pushes the tag
llc tag deleteInteractive tag deletion — select from recent tags or enter a name, deletes locally and remotely

llc docker

Manage Docker containers using compose files.

All commands accept --env [dev|prod|e2e] to select the compose file (default: dev, which uses docker-compose.dev.yml).

CommandDescription
llc docker up [service]Build and start containers (all, or a single service)
llc docker downStop and remove containers
llc docker logs [-f] [service]View container logs
llc docker statusShow container status
llc docker shell <service>Open a shell in a running container
llc docker restart <service>Restart a service

llc branch

Create, delete, and sync local branches.

CommandDescription
llc branch createInteractive branch creation — enter a name, select a base, pushes to origin
llc branch deleteInteractive branch deletion — select a branch, auto-switches if currently on it
llc branch syncInteractive sync — fetches origin, merges the selected remote branch into your current branch, pushes

Released under the MIT License.