User account menu

Search form

User account menu

Main navigation

The primary implementation offered of Solid is written in Javascript based on Node.js. It should run on versions later than version 8. It is being developed on Github and is released with the liberal MIT license to NPM. To give it a spin, you can download Node.js, including npm, and get it running quickly. We have an extensive module README that provides an overview of the many options of the server and is very useful a development environment. For a simple single-user production installation, we provide an example for Debian systems:

Now, you need to decide what is going to be your hostname, we will use your.host.example.org in the following. You should also decide where you want to keep the files the server needs to run. The configuration, data, and supporting metadata database can be kept separate if you want, but we’ll keep them together.

Since everything going on with a Solid server is encrypted, you will need a SSL key and certificate. This can be obtained from e.g. Let’s Encrypt. The easiest way to do this is to use certbot, to do this on Debian Stable, you need a backported package. To obtain that, add this line to your /etc/apt/sources.list:

You may also need to make the config.json file readable to the unprivileged user.

Now, starting the server should be done by:

$ systemctl start solid.service

You should now also have the other facilities provided by systemd available, and it should start automatically after the machine is booted.

The certificate needs to be renewed every few months, and you should modify your Let’s Encrypt setup to use the webroot plugin, which is better to use when the server is running. To do so, modify the file /etc/letsencrypt/renewal/your.host.example.org.conf . Make sure the authenticator line reads: