Skip to content

hashmap-kz/smallci

smallci

A minimal local CI runner with a live terminal UI.

Jobs run in parallel. Steps within a job run sequentially.

License Go Report Card Go Reference Workflow Status Latest Release

Preview

Purpose: concurrency, grouping, aggressive simplicity.


Install

Using Go:

go install github.com/hashmap-kz/smallci@latest

Using Homebrew:

brew tap hashmap-kz/homebrew-tap
brew install smallci

Usage

# Run with smallci.yaml in current directory
smallci

# Specify a config file
smallci run -c path/to/config.yaml

# Generate a default config and save it
smallci init go > smallci.yaml

Config

jobs:
  - name: lint
    steps:
      - name: fmt
        run: gofumpt -w .
      - name: vet
        run: go vet ./...

  - name: test
    steps:
      - name: unit
        run: go test -v -race ./...

  - name: build
    steps:
      - name: build
        run: CGO_ENABLED=0 go build -ldflags="-s -w" ./...

Keybindings

Key Action
/ or k / j Navigate
h / l Fold / unfold job
tab Switch focus (tree <-> logs)
f Jump to first failure
r Re-run selected job; re-run selected step if on a step
R Reload all - re-run the full pipeline from scratch
t Toggle timeline view (shows per-step bars)
q / ctrl+c Quit

License

MIT. See LICENSE for details.

About

A minimal local CI runner with a live terminal UI

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors