Skip to content

oxidescheme/nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oxide

Where function meets form.

oxide nvim dashboard showcase

oxide nvim picker showcase

oxide nvim completion showcase

oxide nvim diagnostics showcase

oxide brings the oxide colorscheme to neovim with full treesitter and lsp support. A minimalist dark theme built around clarity and restraint, using a deep near-black background, crisp white foregrounds, and vibrant accent colors to emphasize structure without visual noise.

Design Philosophy

oxide is built on three core principles:

  • Function first: Every color exists to convey information
  • Visual silence: Elegance emerges from what is intentionally omitted
  • Systematic harmony: Every color relates predictably to the others

The full design philosophy and color system are documented in the main oxide repository.

Features

  • Dark theme focused: A carefully crafted monochromatic dark theme
  • TreeSitter ready: Full support for modern syntax highlighting
  • LSP integrated: Semantic highlighting that respects language servers
  • Customizable: Override colors and highlights to match your workflow
  • Performance focused: Lazy-loaded with minimal startup impact
  • Plugin support: Built-in lualine theme and growing plugin integration

Installation

{
  "oxidescheme/nvim",
  lazy = false,
  priority = 1000,
  config = function()
    require("oxide").setup()
    vim.cmd.colorscheme("oxide")
  end,
}
use {
  "oxidescheme/nvim",
  config = function()
    require("oxide").setup()
    vim.cmd.colorscheme("oxide")
  end
}
Plug 'oxidescheme/nvim'
require("oxide").setup()
vim.cmd.colorscheme("oxide")

Usage

-- Basic usage
vim.cmd.colorscheme("oxide")

-- Or use the lua API
require("oxide").load()

Configuration

oxide comes with sensible defaults, but every aspect can be customized:

require("oxide").setup({
  transparent = false, -- Enable transparent background
  terminal_colors = true, -- Configure terminal colors

  styles = {
    comments = { italic = true },
    keywords = { bold = true },
    functions = {},
    variables = {},
    strings = {},
    booleans = {},
    numbers = {},
  },

  -- Override colors
  on_colors = function(colors)
    colors.red = "#ff0000" -- Make red more intense
  end,

  -- Override highlight groups
  on_highlights = function(highlights, colors)
    highlights.Comment = { fg = colors.green, italic = true }
  end,
})

Configuration Options

Option Default Description
transparent false Enable transparent background
terminal_colors true Set terminal colors
styles {} Style overrides for syntax groups
on_colors nil Function to override color palette
on_highlights nil Function to override highlight groups

Advanced Usage

Custom Styles

require("oxide").setup({
  styles = {
    -- Remove all styling
    comments = {},
    -- Make functions stand out more
    functions = { bold = true, italic = true },
    -- Subtle variables
    variables = { italic = true },
  }
})

Integration with Other Plugins

oxide works seamlessly with popular plugins:

Contributing

We follow the same philosophy as the main oxide project: minimalism doesn't mean stagnation.

  • Report bugs and request features through GitHub Issues
  • PRs that improve clarity and consistency are especially welcome
  • Ensure new highlight groups serve a clear functional purpose

Credits

License

MIT License - see LICENSE for details.

Copyright © 2025-present oxidescheme

Releases

No releases published

Packages

No packages published

Languages