Picture the laptop at the start of a meeting. VS Code is open, and the window is empty. The robot program is not in that window yet. It lives on GitHub, where the team keeps the project so more than one person can work on it. Your first job is to copy that project onto this computer, and then to open the copy as a folder.
01A repository is the project
A repository is the whole robot program: the Java, the libraries it depends on, and the history of who changed what. It is not one file. These lessons use two public repositories so any team can follow along. CASE is a stock WPILib layout. TARS uses a season package and names its setpoints instead of passing raw numbers. You will read CASE first. You will open TARS later, when a lesson compares the two. Your own team’s code is cloned the same way. Only the address changes.
02Clone copies it onto this laptop
Clone means download that repository once and keep the link back to GitHub. You do this once per computer, not once per meeting. In WPILib’s VS Code, choose Terminal, then New Terminal, and paste both lines. Wait until the prompt comes back. You should have two new folders, not two loose files.
git clone https://github.com/TeamSCREAMRobotics/4766_2026Competition.git
git clone https://github.com/TeamSCREAMRobotics/4522_2026Competition.gitRead the first line as a sentence. git is the tool. clone is the action. The address is the CASE repository. Git creates a folder named 4766_2026Competition in whatever directory the terminal is sitting in. The second line does the same thing for TARS. You can also press Ctrl+Shift+P, or Cmd+Shift+P on a Mac, run Git: Clone, paste one address, and pick the parent folder. The result is the same folder.
03Open the folder, not a file
Cloning does not put the robot on screen. File → Open Folder does. In the dialog, select 4766_2026Competition. The title bar should show that name, and the explorer should list build.gradle near the top.
Three common misses, and what each one looks like. File → New File gives you an empty document named something like Untitled-1. That is not the robot. Double-clicking Robot.java from the desktop opens one file with no project around it, so Ctrl+click and the libraries do not work. Opening the parent folder that contains both clones shows two robots and neither one is the project VS Code is building. Opening src by itself hides build.gradle. The project is the folder that contains that file.
04What you should see
Inside src/main/java, two files matter on the first day. Robot.java creates the robot once and, every loop, tells the scheduler to run. RobotContainer.java builds the mechanisms and connects the buttons. Main.java only starts WPILib. Leave it alone. The build folder is generated when the project compiles. You never edit it, and you never open it as the project.
When a name in those files is unfamiliar, hold Ctrl and click it, or Cmd+click on a Mac. VS Code opens the file that defines the name. That is how you will move through the code for the rest of these lessons.
The cards below use the same sequence. Nothing is open at the start of the lab. Get both repositories, then open CASE.
Lab · clone, then open
Get CASE into VS Code
Nothing is open yet. Clone both repositories, then open the CASE folder.
1/6How do you get both robots onto this laptop?
A repository on GitHub is the project. Clone copies it here. Do this once, for both example robots. A new WPILib project is a blank robot, not these two.
git clone https://github.com/TeamSCREAMRobotics/4766_2026Competition.git
git clone https://github.com/TeamSCREAMRobotics/4522_2026Competition.git$ git clone https://github.com/TeamSCREAMRobotics/4766_2026Competition.git Cloning into '4766_2026Competition'... $ git clone https://github.com/TeamSCREAMRobotics/4522_2026Competition.git Cloning into '4522_2026Competition'... $