Development environment installation
The Zulip development environment can be installed on macOS, Windows, and Linux (Debian or Ubuntu recommended). You’ll need at least 2GB of available RAM.
Installing the Zulip development environment requires downloading several hundred megabytes of dependencies, so you will need an active, reasonably fast, internet connection throughout the entire installation processes. You can configure a proxy if you need one.
Recommended setup (Vagrant)
For first-time contributors, we recommend using the Vagrant development environment.
This method creates a virtual machine (for Windows and macOS) or a Linux container (otherwise) inside which the Zulip server and all related services will run. Vagrant adds a bit of overhead to using the Zulip development server, but provides an isolated environment that is easy to install, update, and uninstall. It has been well-tested and performs well.
Zulip also supports a wide range of ways to install the Zulip development environment:
Slow internet connections
If you have a very slow network connection, however, you may want to avoid using Vagrant (which involves downloading an Ubuntu virtual machine or Linux container) and install directly on a Linux system.
An alternative option if you have poor network connectivity is to rent a cloud server and install the Zulip development environment for remote use. See the next section for details.
The Zulip development environment works well on remote virtual machines. This can be a good alternative for those with poor network connectivity or who have limited storage/memory on their local machines.
We recommend giving the Zulip development environment its own virtual machine, running one of the supported platforms for direct installation, with at least 2GB of memory.
If the Zulip development environment will be the only thing running on the remote virtual machine, we recommend installing directly. Otherwise, we recommend the Vagrant method so you can easily uninstall if you need to.
Once you’ve installed the Zulip development environment, you’ll want to read these documents to learn how to use it:
And if you’ve set up the Zulip development environment on a remote machine, take a look at our tips for developing remotely.