Setup Guide
This guide provides a detailed documentation on how to install NEST Desktop with NEST Simulator. The front end NEST Desktop requires NEST Simulator as the back end for the simulation. NEST Simulator has an API Server which can forward requests to the simulation engine. For more information, please have a look here.
Docker (or Docker Compose) and Singularity provide both NEST Desktop and NEST Simulator, so you have everything you need to run NEST Desktop.
Alternatively, you can install NEST Desktop with the pip command. If you only have NEST Desktop (i.e., NEST Simulator is not running as back-end), you can create networks but cannot run simulations within the application. To enable the full functionality of NEST Desktop, you also need to install NEST Simulator on your computer and run NEST Server.
See instructions below for details.
Via Docker Compose
Docker is a virtualization software packaging applications and its dependencies. Docker Compose is a tool for running multi-container applications on Docker defined using the Compose file format. To get more information, see the official page of Docker Compose.
Docker Compose is included in Docker Desktop for Windows and macOS. For more information take a look at the installation guide of Docker Desktop.
Please keep in mind that on Windows you can also use the Windows Subsystem for Linux (WSL) version 2 or higher, which allows you to run Docker without emulation. This offers performance advantages and more features. Detailed instructions on how to use Docker on WSL (version 2+) are provided by Docker and Microsoft.
Install Docker and Docker Compose
apt install docker.io docker-compose
2. Get configuration file for Docker-compose (docker-compose.yml)
wget https://raw.githubusercontent.com/nest-desktop/nest-desktop/main/docker-compose.yml
Build and start NEST Desktop and NEST Simulator with a single command:
sudo docker-compose up --build
Now NEST Desktop is started. You can use NEST Desktop in the web browser at http://localhost:8000.
The installation is now complete! Now we can start constructing networks for the simulation!
Note
For more information (like running the containers without root password, etc.), please read the full documentation of NEST Desktop Docker.
Via Singularity
Singularity is an application container for Linux systems. For more information read the full documentation of Singularity here.
Clone a working copy from the repository and go to the folder:
git clone https://github.com/nest-desktop/nest-desktop-singularity
cd nest-desktop-singularity
Register the bash command for NEST Desktop Singularity:
export PATH=$PATH:$PWD/bin/
Note
You will have to repeat this every time you end a terminal session. If you like to register this command permanently, please proceed according to the full documentation.
Build the Singularity images (it will ask for sudo password):
nest-desktop-singularity build
Note
This command (and the following ones) need to be executed inside the folder where the container files are located, i.e. the nest-desktop-singularity folder.
Start the Singularity instances of NEST Desktop and NEST Simulator:
nest-desktop-singularity start
Now NEST Desktop is started. You can use NEST Desktop in the web browser at http://localhost:8000.
The installation is now complete! Now we can start constructing networks for the simulation!
For more information read the full documentation of NEST Desktop Singularity.
Via Python Package
NEST Simulator cannot be installed via pip (maybe soon). Therefore, we need to install it in another way.
Install NEST Simulator (SKIP THIS STEP IF YOU HAVE NEST 3 INSTALLED.):
Read the full installation guide of NEST Simulator here.
We highly recommend installing NEST 3. With NEST 3, the API server (i.e., NEST Server) is already implemented.
Install the dependencies for the API Server of NEST Simulator:
pip install flask flask-cors RestrictedPython uwsgi
Start NEST Server as the back end:
The API Server for NEST Simulator is referred to as NEST Server.
nest-server start
NEST Server is now running at http://localhost:5000.
You can find the detailed information on NEST Server here.
Install NEST Desktop
NEST Desktop is available on PyPI and can be installed with the pip
command:
pip3 install nest-desktop [--user] [--upgrade]
For more information read the complete installing guide here.
Start NEST Desktop (in another terminal session):
nest-desktop start
Now NEST Desktop is started. You can use NEST Desktop in the web browser at http://localhost:8000.
The installation is now complete! Now we can start constructing networks for the simulation!
For more information read the full documentation of the command API here.