Neovim plugin for NvimBlast activity tracking.
blastd binary automatically (which itself depends on go){
"taigrr/blast.nvim",
dependencies = { "taigrr/glaze.nvim" },
event = "VeryLazy",
opts = {
-- socket_path = vim.fn.expand("~/.local/share/blastd/blastd.sock"),
-- idle_timeout = 120,
-- debug = false,
},
}
use {
"taigrr/blast.nvim",
requires = { "taigrr/glaze.nvim" },
config = function()
require("blast").setup()
end,
}
After installing, run :GlazeInstall blastd to install the daemon (or it will be installed automatically on first use if glaze.nvim is configured with auto_install = true).
Alternatively, install blastd manually:
go install github.com/taigrr/blastd@latest
:BlastPing - Ping the blastd daemon:BlastStatus - Show current tracking status:BlastSync - Trigger immediate sync to Blast serverCreate a .blast.toml anywhere in your project tree:
# Override the project name (default: git directory name)
name = "my-project"
# Mark as private — activity is still synced, but project name and git branch/remote
# are replaced with "private" so the server only sees time, filetype, and metrics
private = true
The file is discovered by walking up from the current buffer's directory to the nearest git root. Both fields are optional.
In a monorepo, you can place .blast.toml in any subdirectory to give it a distinct project name or mark it as private.
The closest .blast.toml between the file and the git root wins:
monorepo/ ← git root
├── .blast.toml ← name = "monorepo" (fallback)
├── apps/
│ ├── web/
│ │ └── .blast.toml ← name = "web"
│ └── api/
│ └── .blast.toml ← name = "api", private = true
└── packages/
└── shared/ ← inherits "monorepo" from root .blast.toml
For global privacy (all projects), set metrics_only = true in your blastd config or BLAST_METRICS_ONLY=true.
.blast.toml)Run :checkhealth blast to verify your setup: