Over the years I've used just about every IDE and text editor known to man (or so it feels)—notepad, FrontPage, DreamWeaver, Eclipse, Sublime Text, Brackets, Atom, IntelliJ and other JetBrains IDEs, and on and on. And of course, Visual Studio Code.
From about 2014-2017 I would follow this pattern of switching between Sublime Text, Atom, Brackets, etc. When I first started with Visual Studio Code, I liked it a lot, but I still flopped around.
I'd use Atom, ST, VSC, etc for frontend code and the quest was always to find the quickest one with the best experience.
Around mid-to-late 2017 I finally decided that Visual Studio Code was my go-to editor of choice unless I needed something with a special feature.
Not wanting to get pigeon-holed into just using VSC for frontend work, I decided to switch my default editor for Unity3D to Visual Studio Code (C#) and loved how snappy it was. Something that was bugging me in Visual Studio 2017 was often I had code that wasn't syncing. I'd end up needing to reload to get VS and Unity working together again.
HEAR YE, HEAR YE
Since 2017 I've been evangelizing Visual Studio Code to other devs (especially frontend devs), but I noticed a problem: friction. You see, VSC out of the box isn't a super-awesome experience(IMHO). I mean, it's ok and it has been getting better, but it's lacking that rockstar pizzaz. You open it up and say, "Ok, WOW me!" and instead you get "I'm pretty non-committal, meh."
And I think this leads to two main problems:
- Devs just quit it and forget it.
- Devs start using it and leave it as is, so he or she ends up with a subpar experience.
One of the awesome-sauce strengths of Visual Studio Code is that you can customize the heck out of it and get your "ahhh perfect" experience.
But let's face it, many devs are a bit lazy in this department. I get it. Not everyone is passionate about tooling and experience. Nothing wrong with it. We just need VSC and other things to start with a "WOW me!" default setting.
A Little Proof
Ok, this is just one example, but it shows a problem (oh yeah, I have the solution in this article).
One day I saw a dev using Visual Studio Code with default stuff (*cry). I began to talk to him about making it better and noticed I gave him a list of like 30 things to do. Not even kidding.
By the time I was done, I could see he was checking out and ready to get back to coding in his sad, little default-experience life. :)
That's when I thought, "Hey, why don't I just give you my killer experience to get you going?" And the answer of course was heck yes. So that's what I did.
Visual Studio Code Starter Bundle
Alright, let's cut to the chase. I want you to use Visual Studio Code and I want to help you do it easily.
And for me, I want an easy way I can get a new VSC rocking on a new machine, VM, whatever fast.
So to solve your problem and mine, I've created a one-click install bundle that will get you up and running fast. There's even an example user settings JSON given that you can just paste in (if you dare, muhahahah).
Ready for awesome? Great! Me too! You can get it one of two ways, or both if you're special:
If you have VSC, just go to the Extensions section and type in "starter bundle." You should see Starter Bundle by Jason A. Martin.
If you prefer a web route: Starter Bundle
As a little side note, I moved and re-published the bundle for 1.0 (was previously under an old publishing account).
I'll keep updating this as I change my own VSC. There's a lot of things in there to make VSC awesome, which you can see in the README for the extension.
Errors? I mean, I never make errors right? Of course I do! I live for bugs! If you spot an error, drop the repo a PR. Thanks!
Here's an example of what the editor looks like:
So in the appearance department, it's doing well, but there's a lot of action under the hood.
A few of my favorite things:
- Formatting: When I save, my code gets formatted for me so I don't need to worry about it (or waste time with lint rules on formatting).
- Icons & Theme: I like my editor to looks snazzy. I have to look at it all day, so it might as well be sexy.
- Git tools: I've got git blame, diff, branches/remotes/stashes/etc viewer, commands and more ready to go.
- Docker: Love having Docker explorer in the IDE.
- NPM commands: Click-to-run NPM commands.
There's a lot more in the feature department, so check out the README.
And remember, you can just paste in the user JSON and you're set. There's no need to do anything past 1 click and 1 paste if you want.
Seriously, Visual Studio Code has come a long way and I definetely recommend trying it out. Just make sure you either use my Starter Bundle or do your own setup first to get the full experience.
And remember, the Visual Studio Code Marketplace has a lot more extensions, plus you can do them yourself!