{"id":31333326,"url":"https://github.com/rrxxyz/neochange-nvim","last_synced_at":"2026-05-06T06:30:55.811Z","repository":{"id":312908788,"uuid":"1049242991","full_name":"rrxxyz/neochange-nvim","owner":"rrxxyz","description":"Neovim plugin for switching between configuration branches","archived":false,"fork":false,"pushed_at":"2025-09-19T17:02:20.000Z","size":39,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-19T19:48:20.698Z","etag":null,"topics":["branch-swiching","configuration","floating-window","git","lua","neovim","neovim-plugin","nvim","vim"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rrxxyz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-02T17:33:04.000Z","updated_at":"2025-09-19T17:02:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"afec0297-4d52-4e57-965d-5d82e1f45d1d","html_url":"https://github.com/rrxxyz/neochange-nvim","commit_stats":null,"previous_names":["rizukirr/neochange-nvim","rrxxyz/neochange-nvim"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/rrxxyz/neochange-nvim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxxyz%2Fneochange-nvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxxyz%2Fneochange-nvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxxyz%2Fneochange-nvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxxyz%2Fneochange-nvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rrxxyz","download_url":"https://codeload.github.com/rrxxyz/neochange-nvim/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rrxxyz%2Fneochange-nvim/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277009877,"owners_count":25744543,"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","status":"online","status_checked_at":"2025-09-25T02:00:09.612Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["branch-swiching","configuration","floating-window","git","lua","neovim","neovim-plugin","nvim","vim"],"created_at":"2025-09-26T01:51:46.519Z","updated_at":"2025-09-26T01:51:49.636Z","avatar_url":"https://github.com/rrxxyz.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NeoChange.nvim\n\nA Neovim plugin for seamless configuration branch switching with an interactive floating window interface.\n\n## ✨ Features\n\n- 🎨 **Interactive Floating Window** - Beautiful branch selector with vim-like navigation\n- ⚡ **Direct Branch Switching** - Quick switching with tab completion  \n- 🔄 **Automatic Reload** - Configuration reloads automatically after branch switch\n- 👁️ **Visual Indicators** - Current branch clearly marked with ● symbol\n- 🛠️ **Zero Configuration** - Works out of the box\n\n## 📦 Installation\n\n### Requirements\n\n- Neovim 0.7+ with Lua support\n- Git repository in your config directory\n- Multiple configuration branches\n\n### Using [lazy.nvim](https://github.com/folke/lazy.nvim)\n\n```lua\n{\n  \"rrxxyz/neochange.nvim\"\n}\n```\n\n### Using [packer.nvim](https://github.com/wbthomason/packer.nvim)\n\n```lua\nuse 'rrxxyz/neochange.nvim'\n```\n\n### Using [vim-plug](https://github.com/junegunn/vim-plug)\n\n```vim\nPlug 'rrxxyz/neochange.nvim'\n```\n\n## 🎯 Usage\n\n### Interactive Branch Selector\n```vim\n:NeoChange\n```\nOpens a floating window with all available branches.\n\n**Controls:**\n- `j` / `↓` - Move down\n- `k` / `↑` - Move up  \n- `Enter` / `Space` - Select branch\n- `q` / `Esc` - Close window\n\n### Direct Branch Switching\n```vim\n:NeoChange python-nvim\n```\nSwitches directly to the specified branch with tab completion.\n\n## 🏗️ Setup Example\n\nStructure your Neovim config as a git repository:\n\n```\n~/.config/nvim/\n├── init.lua\n├── lua/\n│   ├── config/\n│   └── plugins/\n└── .git/\n```\n\nCreate different branches for different configurations:\n\n```bash\n# Create branches for different setups\ngit checkout -b python-nvim    # Python development config\ngit checkout -b cpp-nvim       # C++ development config  \ngit checkout -b minimal        # Lightweight config\n\n# Use NeoChange to switch between them\n:NeoChange python-nvim\n```\n\n## ⚙️ Configuration\n\n**No configuration required!** NeoChange works automatically after installation.\n\nThe plugin auto-loads and registers the `:NeoChange` command when Neovim starts.\n\n## 📖 Documentation\n\nComplete documentation is available within Neovim:\n\n```vim\n:h neochange\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.\n\n### Development Setup\n\n```bash\ngit clone https://github.com/rizukirr/neochange.nvim\ncd neochange.nvim\nmake setup        # Set up development environment\nmake ci           # Run all CI checks (format, lint, test)\n```\n\n### Development Commands\n\n- `make setup` - Set up development environment with all dependencies\n- `make test` - Run all tests using plenary.nvim\n- `make test-watch` - Run tests in watch mode (requires entr)\n- `make lint` - Run luacheck linter on lua/ and tests/\n- `make format` - Format code with stylua\n- `make format-check` - Check code formatting without changes\n- `make install-dev` - Install development dependencies (plenary.nvim)\n- `make ci` - Run complete CI suite (format-check, lint, test)\n- `make clean` - Clean up cache files\n\n## 🐛 Issues \u0026 Support\n\n- 📋 [Report Issues](https://github.com/rizukirr/neochange.nvim/issues)\n- 💬 [Discussions](https://github.com/rizukirr/neochange.nvim/discussions)\n- 📖 Documentation: `:h neochange`\n\n## 📜 License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- Inspired by the need for easy configuration management\n- Built with love for the Neovim community\n- Thanks to all contributors!\n\n---\n\n⭐ **Star this repository if you find it useful!**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frrxxyz%2Fneochange-nvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frrxxyz%2Fneochange-nvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frrxxyz%2Fneochange-nvim/lists"}