💫 CosmicNvim
CosmicNvim is a lightweight and opinionated Neovim config for web development, specifically designed to provide a 💫 COSMIC programming experience!
## 🚀 Stellar Features
#### Native LSP
Full featured native LSP functionality!
- 📘 Go-to definition
- 🔍 Find references/type def/declaration
- 💡 Code actions
- 🚨 Statusline diagnostics
- ⚠️ Linting thanks to [eslint](https://github.com/williamboman/nvim-lsp-installer/blob/main/lua/nvim-lsp-installer/servers/eslint/README.md)
- 🔧 Formatting thanks to [efm](https://github.com/mattn/efm-langserver)
##### Additional features
- Amazing colors thanks to [tokyonight.nvim](https://github.com/folke/tokyonight.nvim)
- Enhanced syntax highlighting with [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter)
- Hand-built statusline with [galaxyline](https://github.com/NTBBloodbath/galaxyline.nvim)
- Explore files with [nvim-tree](https://github.com/kyazdani42/nvim-tree.lua)
- Fuzzy finder and some LSP actions with [Telescope](https://github.com/nvim-telescope/telescope.nvim)
- Floating terminal with [vim-floaterm](https://github.com/voldikss/vim-floaterm)
- Easy LSP installation with [nvim-lsp-installer](https://github.com/williamboman/nvim-lsp-installer)
- Autocompletion provided by [nvim-cmp](https://github.com/hrsh7th/nvim-cmp)
- Session management with [auto-session](https://github.com/rmagatti/auto-session)
- Additional custom highlighting
- Floating windows for references, renaming, diagnostics, code actions and more!
_While CosmicNvim is geared specifically toward TypeScript/JavaScript development, it should be able to provide a great experience with any LSP supported language._
### How to install
_Runs best on Neovim (>=0.6.0) but requires (>=0.5.1)_
Using [stow](https://www.gnu.org/software/stow/)
```
$ git clone git@github.com:mattleong/CosmicNvim.git
$ mkdir ~/.config/nvim
$ stow -t ~/.config/nvim CosmicNvim
```
Symlinking (don't use relative pathing)
```
$ cd ~/
$ git clone git@github.com:mattleong/CosmicNvim.git
$ ln -s ~/.config/nvim ~/CosmicNvim
```
Just clone it
```
$ cd ~/.config
$ git clone git@github.com:mattleong/CosmicNvim.git nvim
```
#### First run
You will need to set up Packers compiled file via the steps below:
1. Start NVIM
2. Run `PackerUpdate` & `PackerCompile`
3. Restart NVIM
4. Install LSP servers, `:LspInstallInfo` or `:LspInstall tsserver`
_Install script coming soon..._
## Mappings
[File navigation](./lua/cosmic/core/file-navigation/mappings.lua)
[File explorer](./lua/cosmic/core/file-explorer/mappings.lua)
[Terminal](./lua/cosmic/core/terminal/mappings.lua)
[LSP](./lua/cosmic/lsp/mappings.lua)
[Other](./lua/cosmic/mappings.lua)
## 📷 Screenshots
### Statusline




### Autocomplete
### Rename

### Hover

### Find Reference

### Code Action

### File Navigation

### Floating Terminal
