An open API service indexing awesome lists of open source software.

https://github.com/unhappychoice/splashboard

A customizable terminal splash screen with plugin-based data sources.
https://github.com/unhappychoice/splashboard

bash cli customizable dashboard developer-tools dotfiles fastfetch fish homebrew motd neofetch nix ratatui rust shell splash-screen starship terminal tui zsh

Last synced: 26 days ago
JSON representation

A customizable terminal splash screen with plugin-based data sources.

Awesome Lists containing this project

README

          


splashboard


crates.io
release
CI
coverage
license


A customizable terminal splash rendered on shell startup and on cd.

splashboard = splash + dashboard

Instead of a blinking cursor, every new shell shows a dashboard of the things you actually care about — greetings, git status, CI health, PRs, a contributions heatmap, the moon phase. The killer feature: a repo that ships `./.splashboard/dashboard.toml` auto-reshapes the splash when you `cd` in, so different repos get different splashes for free.

## Install

```bash
curl -fsSL https://raw.githubusercontent.com/unhappychoice/splashboard/main/install.sh | bash
```

Other install methods

```bash
# cargo
cargo install splashboard

# Homebrew (macOS / Linux)
brew install unhappychoice/tap/splashboard

# cargo-binstall (prebuilt binaries from GitHub Releases)
cargo binstall splashboard

# Nix flake
nix run github:unhappychoice/splashboard
nix profile install github:unhappychoice/splashboard
```

Prebuilt binaries for Linux (x86_64 / aarch64), macOS (x86_64 / aarch64), and Windows (x86_64) are also attached to each [GitHub Release](https://github.com/unhappychoice/splashboard/releases).

`splashboard install` then detects your shell, walks you through template / theme pickers, and wires your rc for you.
```bash
splashboard install
```

Prefer to own the rc edit yourself? Append one line that re-sources `splashboard init ` on every shell start — upgrades to splashboard ship an updated init snippet automatically:

```bash
echo 'eval "$(splashboard init zsh)"' >> ~/.zshrc
echo 'eval "$(splashboard init bash)"' >> ~/.bashrc
echo 'splashboard init fish | source' >> ~/.config/fish/config.fish
echo 'Invoke-Expression (& splashboard init powershell | Out-String)' >> $PROFILE
```

## Docs

📖 ****

- [Getting started](https://splashboard.unhappychoice.com/guides/getting-started/) — install, wire your shell, render your first splash
- [Concepts](https://splashboard.unhappychoice.com/guides/concepts/) — the mental model (Widget = Fetcher + Renderer + Layout slot)
- [Configuration](https://splashboard.unhappychoice.com/guides/configuration/) — the full TOML schema
- [Presets](https://splashboard.unhappychoice.com/guides/presets/) & [Themes](https://splashboard.unhappychoice.com/guides/themes/) — curated dashboards and palettes
- [Trust model](https://splashboard.unhappychoice.com/guides/trust/) — how per-directory configs are sandboxed
- [Reference](https://splashboard.unhappychoice.com/reference/matrix/) — every fetcher and renderer with options and compatible shapes

## Status

Usable day-to-day. Widget catalog tracked as a living roadmap in [issue #41](https://github.com/unhappychoice/splashboard/issues/41) — new fetchers and renderers land as PRs that tick the checkboxes.

## License

ISC

## Related

- [gitlogue](https://github.com/unhappychoice/gitlogue) — cinematic git history replay
- [gittype](https://github.com/unhappychoice/gittype) — CLI typing game from your source code
- [mdts](https://github.com/unhappychoice/mdts) — local Markdown tree server