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 splashboard init nushell | save --append ~/.config/nushell/config.nu ``` ## 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 - [Watch mode](https://splashboard.unhappychoice.com/guides/watch/) โ€” persistent foreground dashboard via `splashboard watch` - [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 ## Support If you find this project useful, please consider: - โญ๏ธ [Star on GitHub](https://github.com/unhappychoice/splashboard) - ๐Ÿฆ [Share on X](https://x.com/intent/post?text=splashboard%3A%20a%20customizable%20terminal%20splash%20screen%20with%20plugin-based%20data%20sources.%20Pretty%20up%20your%20shell%20startup%20%E2%9C%A8&url=https%3A//github.com/unhappychoice/splashboard&hashtags=splashboard,CLI,Rust,terminal) - ๐Ÿฆ‹ [Share on Bluesky](https://bsky.app/intent/compose?text=splashboard%3A%20a%20customizable%20terminal%20splash%20screen%20with%20plugin-based%20data%20sources.%20Pretty%20up%20your%20shell%20startup%20%E2%9C%A8%20%23splashboard%20%23CLI%20%23Rust%20%23terminal%20https%3A//github.com/unhappychoice/splashboard) - ๐Ÿงต [Share on Threads](https://www.threads.net/intent/post?text=splashboard%3A%20a%20customizable%20terminal%20splash%20screen%20with%20plugin-based%20data%20sources.%20Pretty%20up%20your%20shell%20startup%20%E2%9C%A8%20%23splashboard%20%23CLI%20%23Rust%20%23terminal%20https%3A//github.com/unhappychoice/splashboard) - ๐Ÿ’ผ [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A//github.com/unhappychoice/splashboard) - ๐Ÿ“˜ [Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A//github.com/unhappychoice/splashboard) - ๐ŸŸง [Submit to Hacker News](https://news.ycombinator.com/submitlink?u=https%3A//github.com/unhappychoice/splashboard&t=splashboard%3A%20a%20customizable%20terminal%20splash%20screen%20with%20plugin-based%20data%20sources.%20Pretty%20up%20your%20shell%20startup%20%E2%9C%A8) - ๐Ÿ’ฌ Drop it into your Discord server or developer chat - โœ๏ธ Write about it on your blog or in a newsletter Every bit of support helps. Thanks!