Personal Neovim configuration built on top of LazyVim, tuned for security research, lab work, writeups, and fast note-taking.
This repository is meant to be the source of truth for ~/.config/nvim across machines.
This setup is optimized for a security / hacking workflow rather than general-purpose editing.
- Markdown-first note taking for boxes, challenges, and research logs
- Zettelkasten-style note creation with
zk - HTB / lab templates for enumeration, post-exploitation, and privesc notes
- Python templates for validation-oriented CVE / PoC work
- Terminal-heavy workflows with fast splits, fzf, and search-first navigation
- Language tooling centered on Python, Go, Rust, TypeScript, and Nim
The bias is toward speed, structured notes, reproducible commands, and lightweight PoC scaffolding.
- Neovim
>= 0.9(recommended: latest stable) - Git
- A Nerd Font (recommended for icons)
ripgrep(rg)fd(orfdfinddepending on distro)fzf(for workflows/plugins that use it)
git clone https://github.com/identityapproved/id.app.nvim.git ~/.config/nvim
nvimOn first start, Lazy will install plugins automatically.
Or clone anywhere and run the installer:
git clone https://github.com/identityapproved/id.app.nvim.git ~/id.app.nvim
cd ~/id.app.nvim
./install.shSetup script:
./install.shIf you keep this repo somewhere else on disk and want to link it:
mv ~/.config/nvim ~/.config/nvim.bak
ln -sfn /path/to/id.app.nvim ~/.config/nvimPreferred script-based link:
./install.shUseful flags:
./install.sh --dry-run
./install.sh --force
./install.sh --target ~/.config/nvimThen start Neovim:
nvimInside Neovim:
:Lazy sync:Lazy check
Headless equivalents:
nvim --headless "+Lazy! sync" +qa
nvim --headless "+Lazy! check" +qainit.lua: Neovim entrypointlua/config/: core config (options, keymaps, autocmds, bootstrap)lua/plugins/: plugin specs and plugin-specific setuptemplates/: reusable note and code templates, including security and HTB workflowssnippets/: custom snippetslazy-lock.json: pinned plugin versions
- Markdown buffers can insert note templates with
<leader>it - Markdown buffers can insert callout snippets with
<leader>ic zkis used for zettel-style note management<leader>zncreates a new note through a prompt
<leader>zmtoggles Zen Mode
The repo includes reusable templates for:
- HTB / lab note sections
- Linux post-foothold and privesc checklists
- Docker group /
sgenumeration notes - Python CVE / research PoC skeletons
- HTTP, SSRF, LFI, SQLi, SSTI, IDOR, upload, race, and WebSocket validation templates
If plugins look broken after changes:
nvim --headless "+Lazy! restore" +qa
nvim --headless "+checkhealth" +qaIf needed, remove local plugin/cache state and reopen Neovim. Warning: this deletes local Neovim cache/state and will force a full plugin reinstall on next start.
rm -rf ~/.local/share/nvim ~/.local/state/nvim ~/.cache/nvim
nvim