Editors
There are so many great text editors and integrated development environments. We will best be able to support you if we can assume a common, local environment.
🫵 VSCode is Required
If you have strong feelings about your editor, please know you’re almost certainly right. You can even tell anyone you wish that we said so! That being said, in-class and out-of-class, please use vscode. We have the best chance of being able to support you this way.
- Install Visual Studio Code (a.k.a. “vscode”):
- Windows folks, if you’re asked by the install wizard 🧙♀️, ensure that you enable/select the following:
Explorer context menuAdd to PATH
- macOS people:
- Dr. Stewart has an unconfirmed hypothesis that for some apps (like VSCode), if you place them any where other than
/Applicationsor~/Applications, they may not function correctly. So when you download and open the zip, drag the resultingVisual Studio Code.appfile toApplications*
- After installing vscode, launch it and press the “DO ALL THE THINGS!” shortcut: command+shift+P and then (do not delete the pre-filled
>) typeshelland choose theShell Command: Install 'code' command in PATHentry. (docs)
- Dr. Stewart has an unconfirmed hypothesis that for some apps (like VSCode), if you place them any where other than
- Windows folks, if you’re asked by the install wizard 🧙♀️, ensure that you enable/select the following:
VSCode from the Command Line
Make sure code is available from command line (“CLI”):
Restarting Shell
Note any time you’re trying to make new apps or commands available to your command line interface, you may need to re-launch your CLI after installing or configuring the new app/command.
- Windows: the installer should have done it, try opening Windows Terminal or PowerShell or whatever and just type
codeand hit enter. - MacOS
- Linux: the installer should have added it to your path already, try it in your shell
VSCode Extensions for CS 343
VSCode is pretty great out of the box, but part of its speedy greatness is due to their painstaking work to keep the core editor focused, and few-frills. There are several extensions that add functionality to VSCode that might facilitate your work this semester. Consider the following curated lists.
Developer Experience (DX)
- Live Preview
- have the code you’re writing open in the browser for live preview that automatically updates as you work.
- Note: you should almost certainly change one of this extension’s default settings
livePreview.autoRefreshPreviewtoOn Changes to Saved Files(rather thanOn All Changes in Editor), at least before you start making http requests in your code (e.g. viafetch) - Live Share Extension
- real time co-editing with lab partner or project member(s)
- Remote Development extension pack
- Adds functionality to vscode so that it can help support your remote development.
- indent-rainbow
- “This extension colorizes the indentation in front of your text, alternating four different colors on each step.”
- Todo Tree
- “This extension quickly searches (using ripgrep) your workspace for comment tags like TODO and FIXME, and displays them in a tree view in the activity bar. The view can be dragged out of the activity bar into the explorer pane (or anywhere else you would prefer it to be).”
- Code Spell Checker
- “A basic spell checker that works well with code and documents.”
WebDev
- HTML Validate Extension
- get warnings while authoring HTML that your code won’t validate or violates best practices.
- axe Accessibility Linter
- Accessibility Linting for HTML and more.
- Debugger for Firefox
- A VS Code extension to debug web applications and extensions running in Firefox.