diff --git a/.envrc b/.envrc
deleted file mode 100644
index b1a5883..0000000
--- a/.envrc
+++ /dev/null
@@ -1 +0,0 @@
-export PATH="~/.PNPM_HOME:$PATH"
diff --git a/dotfiles/neovim/lua/my/paq.lua b/dotfiles/neovim/lua/my/paq.lua
index b92ae15..ec34b81 100644
--- a/dotfiles/neovim/lua/my/paq.lua
+++ b/dotfiles/neovim/lua/my/paq.lua
@@ -1,17 +1,16 @@
 local M = {}
 
+
 function M.setup()
   local paq = require("paq")
   local themePackages = require("my.theme").deps
   local base = {
+    "nvim-lua/plenary.nvim", -- async utility lib it seems?
     "neovim/nvim-lspconfig", -- configures lsps for me
     "windwp/nvim-autopairs", -- closes pairs for me (should look for a better one)
-    "nvim-lua/plenary.nvim", -- async utility lib it seems?
     "nvim-telescope/telescope.nvim", -- fuzzy search for say opening files
     "purescript-contrib/purescript-vim", -- purescript support
     "terrortylor/nvim-comment", -- allows toggling line comments
-    -- This gets installed by nix now!
-    -- {"nvim-treesitter/nvim-treesitter", run = ":TSUpdate"}, -- use treesitter for syntax highlighting
     "nvim-treesitter/nvim-treesitter-textobjects", -- the lean plugin wants me to install this, lol
     -- "startup-nvim/startup.nvim", -- splash screen
     "glepnir/dashboard-nvim", -- similar to startup.nvim
@@ -50,11 +49,21 @@ function M.setup()
     "haringsrob/nvim_context_vt", -- show context on closing parenthesis
     "vuki656/package-info.nvim", -- shows latest versions in package.json
     "j-hui/fidget.nvim", -- show progress for lsp stuff
+    "stevearc/dressing.nvim", -- better ui I guess
+    "rktjmp/paperplanes.nvim", -- export to pastebin like services
+    "anuvyklack/hydra.nvim", -- keybinds where you only hit the head once
+    "jbyuki/venn.nvim", -- draw ascii diagrams
+
     -- Git stuff
     "ruifm/gitlinker.nvim", -- generate permalinks for code
     "TimUntersberger/neogit" -- magit clone
   }
 
+  -- This might get installed by nix!
+  if os.getenv("NVIM_INSTALL_TREESITTER") then
+    table.insert(base, 2, { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" })
+  end
+
   for _, v in ipairs(themePackages) do
     -- append package in the base list
     table.insert(base, v)
diff --git a/dotfiles/neovim/lua/my/plugins/init.lua b/dotfiles/neovim/lua/my/plugins/init.lua
index 27dc9ce..73d70bf 100644
--- a/dotfiles/neovim/lua/my/plugins/init.lua
+++ b/dotfiles/neovim/lua/my/plugins/init.lua
@@ -6,6 +6,7 @@ function M.setup()
   require "gitlinker".setup()
   require('nvim_comment').setup()
   require('fidget').setup()
+  require('dressing').setup()
 
   vscode.unless(function()
     require("presence"):setup({})
@@ -21,8 +22,10 @@ function M.setup()
     require("my.plugins.vimux").setup()
   end)
 
+  require("my.plugins.paperplanes").setup()
   require("my.plugins.neogit").setup()
   require("my.plugins.telescope").setup()
+  require("my.plugins.venn").setup()
 
   -- require("my.plugins.idris").setup()
   -- require("which-key").setup()
diff --git a/dotfiles/neovim/lua/my/plugins/paperplanes.lua b/dotfiles/neovim/lua/my/plugins/paperplanes.lua
new file mode 100644
index 0000000..6736b5e
--- /dev/null
+++ b/dotfiles/neovim/lua/my/plugins/paperplanes.lua
@@ -0,0 +1,9 @@
+local M = {}
+
+function M.setup()
+  require("paperplanes").setup({
+    provider = "paste.rs"
+  })
+end
+
+return M
diff --git a/dotfiles/neovim/lua/my/plugins/venn.lua b/dotfiles/neovim/lua/my/plugins/venn.lua
new file mode 100644
index 0000000..c86d9aa
--- /dev/null
+++ b/dotfiles/neovim/lua/my/plugins/venn.lua
@@ -0,0 +1,38 @@
+local M = {}
+local hint = [[
+ Arrow^^^^^^   Select region with <C-v> 
+ ^ ^ _K_ ^ ^   _f_: surround it with box
+ _H_ ^ ^ _L_
+ ^ ^ _J_ ^ ^                      _<Esc>_
+]]
+
+function M.setup()
+  local Hydra = require('hydra')
+
+  Hydra({
+    name = 'Draw Diagram',
+    hint = hint,
+    config = {
+      color = 'pink',
+      invoke_on_body = true,
+      hint = {
+        border = 'rounded'
+      },
+      on_enter = function()
+        vim.o.virtualedit = 'all'
+      end,
+    },
+    mode = 'n',
+    body = '<leader>v',
+    heads = {
+      { 'H', '<C-v>h:VBox<CR>' },
+      { 'J', '<C-v>j:VBox<CR>' },
+      { 'K', '<C-v>k:VBox<CR>' },
+      { 'L', '<C-v>l:VBox<CR>' },
+      { 'f', ':VBox<CR>', { mode = 'v' } },
+      { '<Esc>', nil, { exit = true } },
+    }
+  })
+end
+
+return M