{"id":13527326,"url":"https://github.com/comfysage/chaivim","last_synced_at":"2025-04-11T21:42:13.370Z","repository":{"id":210369665,"uuid":"726094931","full_name":"comfysage/chaivim","owner":"comfysage","description":":tea: easily configurable neovim system with solid defaults and a cozy editor experience.","archived":false,"fork":false,"pushed_at":"2024-05-21T12:36:25.000Z","size":1842,"stargazers_count":36,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"mega","last_synced_at":"2024-05-22T12:20:20.029Z","etag":null,"topics":["chaivim","neovim","neovim-configuration","neovim-plugin","neovim-plugins","neovim-setup","nvim","nvim-lua","nvim-plugin","nvim-plugins"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/comfysage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-01T14:24:25.000Z","updated_at":"2024-06-09T15:25:22.531Z","dependencies_parsed_at":"2024-02-28T11:47:10.397Z","dependency_job_id":"920d3401-b7a8-49ae-86bc-a634164c2f8a","html_url":"https://github.com/comfysage/chaivim","commit_stats":null,"previous_names":["crispybaccoon/sentinel.nvim","crispybaccoon/chaivim","comfysage/chaivim"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/comfysage%2Fchaivim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/comfysage%2Fchaivim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/comfysage%2Fchaivim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/comfysage%2Fchaivim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/comfysage","download_url":"https://codeload.github.com/comfysage/chaivim/tar.gz/refs/heads/mega","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248486721,"owners_count":21112180,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chaivim","neovim","neovim-configuration","neovim-plugin","neovim-plugins","neovim-setup","nvim","nvim-lua","nvim-plugin","nvim-plugins"],"created_at":"2024-08-01T06:01:45.800Z","updated_at":"2025-04-11T21:42:13.346Z","avatar_url":"https://github.com/comfysage.png","language":"Lua","funding_links":[],"categories":["Preconfigured Configuration"],"sub_categories":["Competitive Programming"],"readme":"# chaivim\n\n:tea: easily configurable neovim system with solid defaults and a cozy editor experience.\n\n![dash](./images/asset.dash.png)\n\n![telescope__config](./images/asset.telescope.png)\n\n## :sparkles: Features\n\n### Lazy plugin management\n\nchaivim uses [lazy.nvim](https://github.com/folke/lazy.nvim) to manage plugins.\n\n### integrated plugins\n\n- :telescope: [telescope](https://github.com/nvim-telescope/telescope.nvim) - a highly extendable fuzzy finder.\n- :evergreen_tree: [treesitter](https://github.com/nvim-treesitter/nvim-treesitter) - treesitter configurations and abstraction layer for neovim.\n- :pencil: [none-ls](https://github.com/nvimtools/none-ls.nvim) - abstraction layer for lsp diagnostics, code actions, and formatters.\n- :computer: [keymaps](https://github.com/comfysage/keymaps.nvim) - a keymap manager for neovim.\n- :airplane: [lualine](https://github.com/nvim-lualine/lualine.nvim) - a blazing fast and easy to configure neovim statusline plugin.\n- :pencil: [cmp](https://github.com/hrsh7th/nvim-cmp) - a completion plugin for neovim.\n- :scissors: [luasnip](https://github.com/L3MON4D3/LuaSnip) with [friendly-snippets](https://github.com/rafamadriz/friendly-snippets) - a snippet engine for neovim.\n- :hammer: [mini.nvim](https://github.com/echasnovski/mini.nvim) - the \"swiss army knife\" among neovim plugins.\n- :vertical_traffic_light: [gitsigns](https://github.com/lewis6991/gitsigns.nvim) - git integration for neovim.\n- :scroll: [which-key](https://github.com/folke/which-key.nvim) - a keymap ui for neovim.\n- :pushpin: [todo-comments](https://github.com/folke/todo-comments.nvim) - highlight, list and search todo comments in your projects.\n- :construction: [trouble](https://github.com/folke/trouble.nvim) - a diagnostics manager.\n- :balloon: [incline](https://github.com/b0o/incline.nvim) - floating statuslines for neovim.\n- :straight_ruler: [indent-blankline](https://github.com/lukas-reineke/indent-blankline.nvim) - indent guides for neovim.\n\n## :lock: requirements\n\n- Neovim `\u003e= 0.10.0` (needs to be built with LuaJIT)\n- git `\u003e= 2.19.0` (for partial clones support)\n- a Nerd Font (optional)\n- [luarocks](https://luarocks.org/) to install rockspecs.\n\n## :package: installation\n\nchaivim can be installed [manually](#manual-install) or through the installer:\n```shell\ncurl -fsSL https://github.com/comfysage/chaivim/raw/mega/utils/installer/install.sh | sh\n```\n\n### manual install\n\n```lua\n-- init.lua\nlocal rootpath = vim.fn.stdpath(\"data\") .. \"/ch\"\nlocal chaipath = rootpath .. \"/chai\"\n\nif not vim.uv.fs_stat(chaipath) then\n  vim.system({\n    \"git\",\n    \"clone\",\n    \"--filter=blob:none\",\n    \"https://github.com/comfysage/chaivim.git\",\n    chaipath,\n  }):wait()\nend\n\nvim.opt.rtp:prepend(chaipath)\n```\n\n## :rocket: usage\n\n```lua\n-- init.lua\nrequire 'ch'.setup('custom.config', 'custom.modules')\n\n-- lua/custom/config.lua\nreturn {\n    ui = {\n        colorscheme = 'evergarden',\n        transparent_background = false,\n    },\n}\n\n-- lua/custom/modules.lua\nreturn {\n    ch = {\n        {\n            'options',\n            opts = {\n                cursorline = false,\n                tab_width = 2,\n                scrolloff = 5,\n            },\n        },\n        {\n            'dash',\n            opts = {\n                open_on_startup = true,\n            },\n        },\n    },\n    custom = {\n        -- your custom modules (in `lua/custom/`)\n    },\n}\n```\nor call `require 'ch'.setup 'custom'` to load a custom configuration from `lua/custom/init.lua`:\n```lua\n-- init.lua\nrequire 'ch'.setup 'custom'\n\n-- lua/custom/init.lua\nreturn {\n    ui = {\n        colorscheme = 'evergarden',\n    },\n    modules = {\n        ch = {\n            { 'options' },\n            { 'base' },\n        },\n    },\n}\n```\n\nall config fields can be overwritten after `setup()`:\n```lua\nch.config.ui.colorscheme = 'tokyonight'\n```\n\n## :gear: config modules\n\nview example configurations for modules [here](doc/modules.md).\n\n## :camera: screenshots\n\n![nix-config](./images/asset.nix__config.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomfysage%2Fchaivim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcomfysage%2Fchaivim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomfysage%2Fchaivim/lists"}