Windows
Open PowerShell and run the specific Windows install command provided on the official site: https://pnpm.io/installation
Before we dive into coding, it is essential to set up your development environment properly. This guide will walk you through the steps to install and configure the tools you'll need. We recommend the following software:
Please note that a Chromebook is not an acceptable device for this course. You will need a Windows, macOS, or Linux computer to complete the assignments. With newer Chromebooks, you may be able to install a Linux subsystem, but this is not recommended due to potential compatibility issues and high levels of technical expertise required.
VS Code is a lightweight yet powerful code editor that supports JavaScript and many other programming languages. Your instructor will use this editor in class, and it is the only one your instructor can readily support. Follow these steps to install VS Code:
Once installed, you can open VS Code and explore its extensions to enhance your coding experience.
Node.js is a runtime environment for executing JavaScript code outside the browser. If you are using Node Version Manager (NVM), please use NVM to install Node.js. Detailed OS-specific instructions for NVM can be found here. If you prefer a direct installation or only have one version of Node.js installed, follow these steps:
node --version
pnpm (Performant Node Package Manager) is an efficient and fast package manager that we recommend over the more traditional npm. Unlike npm, pnpm uses a content-addressable storage system, which means packages are installed only once, even if multiple projects depend on them. This saves disk space and speeds up your workflow.
It is highly recommended to install pnpm globally on your system using your operating systems specific installation instructions. We have copied most of the instructions from the official pnpm installation page below for your convenience:
Open PowerShell and run the specific Windows install command provided on the official site: https://pnpm.io/installation
Install pnpm using Homebrew by running:
brew install pnpm
After installation, restart your terminal to ensure the changes take effect. Then, verify the installation by running:
pnpm --version
Run the following command to install pnpm via a script:
curl -fsSL https://get.pnpm.io/install.sh | sh -
Ensure pnpm is added to your PATH by following the script's instructions. After installation, restart your terminal to ensure the changes take effect. Then, verify the installation by running:
pnpm --version
This option is not recommended but sometimes necessary. If you have Node.js installed and prefer to use npm, you can install pnpm globally by running the following command in your terminal:
npm install -g pnpm
pnpm --version
After installing PNPM, always close and reopen your terminal to refresh your system's PATH environment variable. If PNPM is still not recognized, you may need to manually add its location to your PATH.
To find where PNPM was installed, download this script and run:
node find-pnpm-global-bin.mjs
The script will output the directory where the PNPM binary is located. To use PNPM from any terminal window, add this directory to your system's PATH environment variable. If you are not sure how to do this, you can ask an AI assistant for guidance, look up instructions for your operating system, or contact your instructor or TA for help.
Setting up your development environment with the necessary tools is the first and most important step in this course. Completing this setup early will help you work more efficiently. If you encounter any issues during installation, feel free to reach out to your peers, assist each other, or consult online resources and the official documentation. You can also seek guidance from the course TA, if available, or the instructor. Working together and utilizing these resources will help you overcome any challenges and stay on track this semester.
Once you have completed the setup, you are ready to start completing this units assignments. You will need additional software for future assignments, but this setup will be sufficient for the first few weeks. The instructor will provide instructions for any additional software needed as the course progresses.