Setup Your Development Environment
This is an overview of the programs you’ll need to install before developing for BobaBoard.
What to Install
Section titled “What to Install”Install Checklist
Section titled “Install Checklist”- Windows Subsystem for Linux (WSL) [Windows Only]
- Git
- NodeJS
- Yarn
- Docker [boba-backend Only]
Windows Subsystem for Linux (WSL) [Windows Only]
Section titled “Windows Subsystem for Linux (WSL) [Windows Only]”WSL allows you to run Linux commands on Windows, and will save you many, many headaches. We recommend using the latest version of WSL (WSL2). The default Ubuntu distribution is the most commonly used, but if you’re more familiar with another distribution, you’re welcome to use it.
For a step-by-step guide to setting up WSL, installing the below pre-requisites, and getting set-up to develop for BobaBoard using WSL see The BobaBoard Guide to Setting up WSL
Git/GitHub
Section titled “Git/GitHub”**You will use Git and a GitHub account to download the BobaBoard code, make changes and send them out for review.**You can learn more about Git and GitHub in our knowledge base.
To install git, follow the instructions on GitHub. While this documentation assumes you’re using git through the command line, using GitHub Desktop or VSCode’s Git(Hub) integration might provide an easier experience for newcomers.
NodeJS (with NVM)
Section titled “NodeJS (with NVM)”NodeJS allows you to execute JavaScript outside of a web browser. This should be installed via the Node Version Manager (NVM), which allows you to manage multiple versions of NodeJS on the same machine.
Yarn is a JavaScript Package Manager, which
automatically downloads and installs the external code that BobaBoard depends
on, without you having to manually download everything yourself. Yarn is also
used to hide complex scripts under simpler commands like yarn run test.
Docker [boba-backend Only]
Section titled “Docker [boba-backend Only]”Docker runs applications in containers. I literally had to Google an ELI5. Trust me, you don’t need to understand Docker to use it.
- You also need Docker Compose. This comes for free with the above in Windows and Mac, but might need additional steps on Linux.
Docker will be used to run BobaBoard’s PostgreSQL database and the Redis cache without globally installing them on your system. You can learn more about caches in our knowledge base.
Next Steps
Section titled “Next Steps”You can install each codebase independently by following the “fetching dependencies through yarn” section in its instructions. If you want to “catch them all”, you should go through each of them in reading order and follow the “local copy” section instead.
BobaBoard Install Fests
Section titled “BobaBoard Install Fests”“Install Fests” are events where one or more contributors install the BobaBoard codebase together and help each other in case of problems. Ms. Boba is also there on standby for any question that comes up.
While we plan to organize regular install fests in the future, we currently schedule them on request. You can contact Ms. Boba for availability.