# Technical Context ## Technologies Used ### Core - Neovim (Latest stable or nightly) - Lua (Primary configuration language) - Git (Version control and plugin management) ### Plugin Management - lazy.nvim (Plugin manager) ### Major Plugins and Tools 1. LSP Related - nvim-lspconfig (LSP configuration) - mason.nvim (LSP/DAP/Linter installer) - mason-lspconfig.nvim (Mason/LSP integration) - cmp-nvim-lsp (LSP completion integration) 2. Completion and Snippets - nvim-cmp (Completion engine) - LuaSnip (Snippet engine) 3. Development Tools - nvim-treesitter (Syntax highlighting) - telescope.nvim (Fuzzy finder) - gitsigns.nvim (Git integration) - conform.nvim (Formatting) ## Development Setup Required external dependencies: - git - make - unzip - C Compiler (gcc) - ripgrep - Clipboard tool (platform dependent) - Optional: Nerd Font Language-specific requirements: - npm (for TypeScript/JavaScript) - go (for Golang) - python3 (for Python) - etc. based on languages used ## Technical Constraints 1. Memory Usage - Configured for reasonable memory usage - Plugin lazy-loading enabled 2. Performance - Startup optimizations in place - LSP configurations are lazy-loaded - Treesitter ensures efficient syntax highlighting 3. Platform Compatibility - Works across Linux, macOS, and Windows - Some features may require platform-specific setup - Windows may need additional configuration for certain tools 4. Dependencies - Requires Neovim 0.9.0 or newer - Some LSP features require external language servers - Format-on-save requires compatible formatters