alpha-nvim icon indicating copy to clipboard operation
alpha-nvim copied to clipboard

a lua powered greeter like vim-startify / dashboard-nvim

α alpha-nvim

alpha is a fast and fully programmable greeter for neovim.

share or snipe some custom themes @ https://github.com/goolord/alpha-nvim/discussions/16

Quick Start

vim-startify theme

glamor shot With packer:

use {
    'goolord/alpha-nvim',
    requires = { 'kyazdani42/nvim-web-devicons' },
    config = function ()
        require'alpha'.setup(require'alpha.themes.startify'.config)
    end
}

..or using paq:

require "paq" {
    "goolord/alpha-nvim";
    "kyazdani42/nvim-web-devicons";
}
require'alpha'.setup(require'alpha.themes.startify'.config)

dashboard-nvim theme

glamor shot With packer:

use {
    'goolord/alpha-nvim',
    config = function ()
        require'alpha'.setup(require'alpha.themes.dashboard'.config)
    end
}

..or using paq:

require "paq" {
    "goolord/alpha-nvim";
    "kyazdani42/nvim-web-devicons";
}
require'alpha'.setup(require'alpha.themes.dashboard'.config)

if you want sessions, see

  • https://github.com/Shatur/neovim-session-manager
  • :h :mks

this theme makes some assumptions about your default keybindings to customize the buttons, see :h alpha-example

Elevator pitch

alpha is really a general purpose neovim ui library with some conveniences for writing a greeter ui. it has a functional, data-oriented api design. themes are expressed entirely as data, which is what makes alpha "fully programmable". alpha is also the fastest greeter I've benchmarked (which is why I daily drive it myself!).

Profiling Results

benchmark

  • using https://github.com/lewis6991/impatient.nvim
  • only config! doesn't measure drawing, some startup plugins won't measure drawing either

Special Thanks

  • https://github.com/glepnir/dashboard-nvim - inspiration, code reference
  • https://github.com/mhinz/vim-startify - inspiration