Get Started
Set up Blast in a few minutes. You'll need an editor plugin, the blastd daemon, and an API token.
Install an editor plugin
Blast supports multiple editors. Pick yours and install the plugin — it sends activity to the local daemon over a unix socket.
-- lazy.nvim
{
"taigrr/blast.nvim",
event = "VeryLazy",
opts = {
-- If overriding socket_path, use vim.fn.expand() for ~
-- socket_path = vim.fn.expand("~/.local/share/blastd/blastd.sock"),
},
}Install the daemon
blastd runs in the background, collecting activity from your editor and syncing it to the server every 10 minutes. Download a prebuilt binary from the releases page, or install with Go.
# Option 1: Download a prebuilt binary # Visit the releases page and grab the archive for your OS/arch, # e.g. blastd_0.1.7_linux_amd64.tar.gz, then: tar xzf blastd_*.tar.gz sudo mv blastd /usr/local/bin/ # Debian/Ubuntu users can install the .deb directly: # sudo dpkg -i blastd_*_amd64.deb # Option 2: Install with Go (requires Go 1.21+) go install github.com/taigrr/blastd@latest
Create an API token
Generate a token in Settings and add it to the blastd config file.
# ~/.config/blastd/config.toml server_url = "https://www.nvimblast.com" auth_token = "blast_..."
Start coding
Open your editor and your activity will appear on the leaderboard within 10 minutes. The plugin automatically launches blastd in the background.
Why a separate daemon?
Blast uses a local daemon instead of baking server logic into each editor plugin. Here's why.
Cross-editor support
Any editor can send events to the same unix socket. Neovim, Emacs, and future integrations all work through a single daemon — no per-editor server logic needed.
Multi-session aware
Multiple editor instances write to the same daemon simultaneously. Open ten Neovim splits and an Emacs frame — blastd tracks them all.
Offline-first
All activity is cached locally on disk. blastd works without internet and syncs when connectivity returns. Nothing is lost.
Privacy by design
Your machine only contacts the server every 10 minutes in a single batch — not per keystroke. Activity is aggregated locally before syncing, so granular timing never leaves your machine.
Outlives your editor
Closing your editor doesn't lose unsent data. The daemon keeps running and syncs on schedule. Crash recovery is built in — data is on disk, not just in memory.
Your data, your disk
A full local copy of your activity data lives on your machine. You can inspect, export, or delete it anytime. Config is a single TOML file.
Lightweight
A single static binary with no runtime dependencies. Negligible CPU and memory usage — it just listens on a unix socket and wakes up periodically to sync.