LmanTW/themify.nvim

github github
colorschemecolorscheme-switchers
stars 23
issues 0
subscribers 1
forks 1
CREATED

2024-08-24

UPDATED

10 hours ago


Themify

A screenshot of Themify

A colorscheme manager and switcher designed for Neovim written in Lua. Inspired by Themery.nvim and Lazy.nvim.

  • 🎨 Easily install and manage your colorschemes.
  • 🔍 Explore and preview colorschemes directly in Neovim.
  • ⚡️ Optimized startup time with lazy-loaded colorschemes.

📦 Installation

Use the package manager of your choice to install Theminify:

{
  'lmantw/themify.nvim',
    
  lazy = false,
  priority = 999,

  config = {}
}
use {
  'lmantw/themify.nvim',

  config = {}
}
local themify_path = vim.fs.joinpath(vim.fn.stdpath('data'), 'themify')

if not vim.loop.fs_stat(themify_path) then
  vim.fn.system({
    'git', 'clone',
    'https://github.com/LmanTW/themify.nvim.git',
    themify_path,
  })
end

vim.opt.rtp:prepend(themify_path)

require('themify').setup()

🛠 Configuration

The configuration for Themify is really easy and stright forward, just call the setup function (or use the config option in your package manager) and add the colorschemes you want to install / manage:

require('themery').setup({
  -- Your list of colorschemes.

  'folke/tokyonight.nvim',
  'Yazeed1s/minimal.nvim',
  {
    'sho-87/kanagawa-paper.nvim',

     branch = 'master'
  },

  -- Built-in colorschemes are also supported.
  -- (Also works with any colorschemes that are installed via other plugin manager, just make sure the colorscheme is loaded before Themify is loaded.)
  'default'
})

[!IMPORTANT] The colorschemes will not be installed automatically, please use the command :Themify to open the interface, then press I to install all the colorschemes.

{
  async = false,
  -- Enable this would load the colorscheme asynchronously, which might improve your startup time.

  {
    'folke/tokyonight.nvim',

    branch = 'main',

    before = function()
      -- The function run before the colorscheme is loaded.
    end,
    after = function()
      -- The function run after the colorscheme is loaded.
    end,

    -- A colorscheme can have multiple themes, you can use the options below to only show the themes you want.
    whitelist = {'tokyonight-night', 'tokyonight-day'},
    blacklist = {}
  }
}

📚 Colorscheme Database

Themify has a colorscheme database that can be access through the Explore page, you can search through the themes by using the brightness and temperature options.

[!TIP] You can add a colorscheme to the database by opening an issue.

📎 Other