These Cursor Extensions Took Me From Debugging to Deploying
May 9, 2025
Parker walks through the extension stack and VS Code setup that helped him move from debugging to deployment, with a focus on consistency across his Windsurf and Cursor repos and practical, non-fluffy tips.
Core idea: one solid editor setup across monorepos#
- A cohesive VS Code environment that combines powerful formatting, linting, and visibility tools.
- A mix of language support, AI-assisted workflows, and UI tweaks to keep code quality high and deployment faster.
Essential extensions I rely on (by category)#
- Formatting, linting, and code quality
- Biome: all-in-one formatter + linter for web projects; fast and strict (Rust-based).
- Black: Python formatter.
- Ruff: Python linter.
- Error Lens: inline errors shown in-editor for quick fixes.
- Pretty TypeScript errors: nicer TS error messages on hover.
- ES7 React/Redux/JSX Snippets: handy shorthands for common React patterns.
- AI, productivity, and visibility
- ChatGPT for code (Mac OS): quick code-facing AI aid with a small, useful tag.
- Token Count: shows token usage for a file, useful for estimating LLM costs.
- To-do Tree: surfaces and prioritizes to-dos/fixes in the codebase.
- Walk Time: tracks time spent on each project.
- Navigation, visibility, and quality signals
- Bracket Pair Colorization (trigger): visual bracket matching to reduce mental load.
- Color Highlight: shows the actual color behind hex/HSL values.
- Rainbow CSV: nice formatting for CSVs in the repo.
- GitLens: rich Git history and blame insights.
- End: (contextual hint about inline feedback and tooling; focus remains on solid surface tools)
- AI-assisted development and integrations
- Dino: TypeScript/JavaScript language server (Deno integration).
- Dev Containers: work with containerized dev environments.
- Docker: Docker tooling inside VS Code.
- Live Share: quick pairing and collaboration sessions.
- SQL Tools: SQL/PostgreSQL tooling inside the editor.
- Prisma, Supabase, PostgreSQL Tools: database/schema support inside the IDE.
- Pretty, fast TypeScript/JS tooling: “Pretty TypeScript errors” as noted above.
- Tailwind Docs and Tailwind CSS: quick access to Tailwind docs from the editor.
- Simple React Snippets: quick React code snippets.
- ES7-related snippets (oversight noted above) and general React/JS tooling.
- Language and framework support you’ll likely use
- Lua (Neovim config support inside VS Code)
- Go (Go language support)
- Python: Pylance, Python extension, Python debugger
- XML/YAML/JSON: XML Tools, YAML Tools, JSON Language features
- Swift (if you touch Swift)
- Postgres tools, Prisma, and SQL-related extensions for DB-centric work
- UI, themes, and polish
- Catppuccin icons and Capuccin/Frappe theme variants (visual consistency)
- Noctis (theme option, though not Parker’s current primary choice)
- Pace (a tasteful UI/theme choice to reduce fatigue)
- Vim-style editing for speed
- Vim extension: Parker credits modal editing as a big productivity gain; configured to avoid performance pitfalls.
- Remote and container work
- Remote - SSH (implicit in “remote stuff for dealing with VPS”)
- Dev Containers, Docker (for consistent dev environments)
Settings highlights (what Parker tweaked)#
- Font and appearance
- Font: SF Mono with Nerd/ligature styling for better readability.
- Font size: 13; line height: 17.
- Cursor blinking: smooth.
- Icon theme: Catppuccin icons; color theme: Catppuccin (Frappe variant).
- Editor behavior
- Relative line numbers for Vim motions (editor.lineNumbers: "relative").
- System clipboard as default for easy copy-paste between apps.
- Vim extension settings tuned to prevent performance issues during heavy edits.
- General VS Code polish
- A lean setup with minimal bloat, prioritizing speed and consistency across projects.
- Sample settings.json snapshot
{
"editor.fontFamily": "SF Mono",
"editor.fontSize": 13,
"editor.lineHeight": 17,
"editor.cursorBlinking": "smooth",
"editor.lineNumbers": "relative",
"workbench.iconTheme": "catppuccin-icons",
"workbench.colorTheme": "Catppuccin (Frappe)",
"vim.useCtrlKeys": false
}Note: this is a representative snapshot of his approach; adjust for your environment.
AI docs workflow: pattern Parker is exploring#
- Idea: separate AI docs per app, with an integrated memory bank and prompts.
- How to use it in practice:
- Build AI docs for an app with concrete examples and usage notes.
- Create a memory bank of prompts and prompts templates you reuse.
- Attach the memory and prompts to each app so AI tools behave consistently.
- Takeaway: this pattern helps you scale AI-assisted development across multiple services without reinventing the wheel each time.
Takeaways and practical tips#
- Start with a focused extension set. Too many extensions degrade performance and cognitive load.
- Unify your editor across monorepos to shave weeks off deployment cycles.
- Use Vim mode for motion efficiency, but tune it to avoid editor slowdown.
- Leverage inline errors and token-aware tooling to keep feedback fast and deployment-ready.
- Build an AI-docs memory system to scale AI-assisted development across projects.
Links#
- Cursor Memory Bank - Memory bank + prompts approach for Cursor AI docs
- Catppuccin icons and Catppuccin theme (Frappe)
- Vim extension for VS Code
- Deno language server
- Dev Containers and Docker extensions
- Rainbow CSV, Error Lens, Pretty TypeScript Errors
- Tailwind CSS IntelliSense
- Simple React Snippets and ES7 React/Redux/JSX Snippets
- SQLTools, Prisma, Supabase extensions
- Live Share, GitLens, and Todo Tree
- WakaTime and other productivity helpers
If you found this setup helpful, start with one or two core extensions (formatting + a debugging-aid extension) and gradually layer in the rest as you stabilize your workflow. What extension would you add to your setup first?
Transcript
With the purchase of Windsurf by OpenAI, I spent some time making sure that my Windsurf had the same setup as my cursor. And then I decided I should probably have my VS Code all be the same. So anyways, I get a lot of questions about the extensions and settings that I have for my code editors. And I wanted to just quickly show you it. No fluff, no BS. Let's just jump in. If you didn't know, I'm Parker X and I make a lot of YouTube videos as well as build a lot of software. So, I led technology for a startup that sold for $23 million. And after that, I've been on a journey learning how to use AI every day and we have a community of people way smarter than me, which is going great and I really love it because I am not your guru. We all learn together. So, let's see. First of all, on the left we have wind surf. On the right we have cursor. On the left within windsurf is a polyglot monor repo with python and typescript specifically using tanstack start. And on the right we have a turbo mono repo with a bunch of TypeScript basically. Next. So, when it comes to my extensions, if you didn't know, you can do command shift X. And the ones that I really lean on the most are formatterers and some little things like bracket colorization. So, may sound silly, but as we go down this list, those are just ones I immediately think of. Other ones that are interesting, so let's go top to bottom. Token count. Token count is good because you can understand how large a file is getting through the lens of an LLM. Token count allows it's basically the metric that the LLM use instead of characters. So this one by Karl Marx lets you see this in the bottom. And then other things in here I'll just call out auto rename tag helpful autod do string when you're working with Python. the better toml language support biome biome I think is the way to go when you're working with web projects it is essentially a formatter in a llinter so it replaces eslint and prettier and it just works and it can be very strict it's written in rust so it's super performant then we have black formatter black formatter is the formatter for python we have this bracket pair colorization trigger. So you can see when I click on this that as I click on something it will show me the color behind the brackets just easier for visibility. We have catpine icons for VS code. So that's what they look like. On the left hand side we have the chat GPT work with code on Mac OS which allows me to get this nice little tag. And it is interesting because the better that OpenAI gets with their updates, the more that it's chewing into the ecosystem of agent, but I don't think it's going to replace it. It's just not close enough. But it does allow you to connect that. There we have cloak, which is for hiding things. You wouldn't need that unless you're screen sharing a lot. We have color highlight, which does just that. It shows you the color of whatever hex code or HSL that you have. I have a couple other things. The copy text of selected files. So, this one allows you to select multiple files and then copy the selected copy content of selected files. So, it basically just lets you bring them all to the clipboard. And that's helpful if you're bringing files into a different place. Like this is I think originally was when I was just trying to use Gro 3 and there was no API. We have Dino for the language server. We have dev containers for doing dev containers. We have docker. We have end. We have error lens which is really nice. It's inline errors. So you don't have to open anything. They're just right there. If you see red, go fix it. We have ES7. This is a classic one. So if I don't know if I did RFCE and I had the right language mode on. Basically what it does is it allows you to type in shorthands. So that would be react functional component export and that one's nice. ESLint expo tools Figma for VS Code. Never used that. I'm just going to call it the ones that I actually use. The GitHub actions, of course, you need that. Get lens for seeing the history of things. So if I clicked on the previous changes, I can see like what's happened within this file and also see blames and all that fun stuff. Go. in case you're using Go for language support. Other ones, let's see. Trying to think of the ones that are really important. I think I sort good all the Jupiter stuff. Live share if you're doing I don't know random live sharing. Markdown all-in-one find this really helpful. Lua in case you are doing different invim config stuff. That's really only what I use Lua for. Engine X language support. Noctis is a nice theme, but I don't use that. I'm currently rocking the GitHub one, and I'll show you my settings there in a bit. Pace is very nice, though. That's the one that Shad Cen was using. Postgress tools. This is for language support right in your IDE, especially for Superbase. Pretty typescript errors. They inject the errors on top of the on hover, which is really nice. Prisma project manager. I never use it. Never use projects either. Pilance, Python, and Python debugger. All necessary. What else? Trying to keep this interesting. Rainbow CSV. Just nice for actually getting some formatting on your CSVs if you do have any in your project. Then we have some remote stuff for dealing with VPS's. We have rough which is the llinter and formatter that you combine with black when working with your Python projects simple react snippets that's just more of the same SQL tools very nice for both connecting but it has it's like an all-in-one tool for working with SQL and Postgress the superbase extension would only really work with VS Code swift what else Tailwind CSS tailwind docs is nice. So, if I do Tailwind, right, then I can pull up the browser full of docs in here. To-do tree is a new one that I've added. It basically just shows you if you do have to-dos or fix memes or whatever, it will put better markers around them and it'll help bubble those up so that you make sure you get them done. Vim. This is the most maybe the most important one for me, but just being able to hop around using Vim motions. Really nice. And you'll see in my settings file in a second how I have it set up so that it doesn't basically blow through your performance. Walk time will show you the amount of time that you spend on each project. Very nice. XML tools, YAML tools, and that's mostly it. Cool. So, I'll just do the same thing when I'm using other tools. Now, let's go into settings.json. And I'm using an SF mono font nerd. So, it is the Apple one that's liaturized, meaning I'll get the italics. I'll get the icons. If it was not italiciz or sorry liaturzized and it was not a nerd font then I wouldn't get all that nice stuff. Font size 13 line height 17. Other things cursor blinking smooth. I use relative numbers for hopping around using vim motion. So you'll see like this is going to be if I opened up like this you can see how many you are away from the current. Really helpful. Running white space is trailing. Other ones that are important in here. Yeah. just more font stuff. And as we get down, it's all GitHub. As we The icon theme is Capuccin Frappe. I really like the look of it. It's also dynamic. So if you have, you'll notice little things how they change based on the status of your folders in your directories. And then formatterers. I'll have JavaScript the default one for biome. I think I just have this one in place because I do open a lot of ESLint supported projects. It's the default. JSON C. We have the VS Code JSON language stuff. So JSON C is just allowing for comments in JSON. XML, we have one for that. What else is interesting in here? That's pretty much it. Are there any? Yeah, the Vim ones are in here. So I literally just using the basic ones and making sure that the clipboard is the system one because I don't utilize the other buffer. I'm doing too much copy pasting from file to file. So, it's easier for me to just tab everything on the clip board. That is it for my setup. If you guys have any questions, let me know. But that's what I use. What am I missing? What's something that I should have in here that I don't? I'd love to hear from you guys. I guess maybe one of them is just this like in terms of patterns is something that I'm doing where AI docs is something that I learned from Indie Dev Dan. and just figuring out how I want to have this set up in each one of my apps where it's like the AI docs will have examples and then it'll also have a combination of the memory bank and prompts. So, that's the direction I'm going in. If you found this helpful, make sure you like the video. If you want to check out the community, it's half off until we launch the new service. We got a lot of smart people in there. And make sure you subscribe to the channel and I'll see you in the next one.