Skip to main content

Movim, the decentralized social network

Movim is a social network, based on XMPP, with Chat and chatrooms, news & communities features.

Simple, light and elegant, Movim client can be installed on your desktop or smartphone.

Movim has been here for years and I never really had time to write a tutorial. With their recent new version I decided to give it a try and write the installation steps.

It has always been a project I care and I am happy to see how far and well they went.
Movim, based on XMPP (Jabber) is basically a web interface and works as a social network. You can host your own XMPP server or leverage exisiting one (or their own) and then install the web interface.

 

You can install their client on your Windows/Linux/MacOS desktop or your Android phone.

Their chat / conversation feature is quite elegant and simple to use (1 click to insert pictures, synchronized discussions on all your devices, offline mode, sent/read notification,…). They also have a News and Communities parts. The news feature is ads-free and really put the focus on your content / publications. You can also make it public, to become your blog. On the communities side, it is basically for you to create or connect with various communities/group on the XMPP network.

We will probably have very soon some new features through Movim Hello with calls/video-conferences.

 

Interested to give it a try? You can try my own instance at mo.freedif.org or directly install it on your own server. (Debian in my case).

 

Installation

Written in PHP, Movim has few dependencies. First you will need Apache, PHP and MySQL (or MariaDB) installed. I will not cover that part on this tutorial as you probably already have them. Or simply follow my previous tutorial on how to install a LAMP server.

 

1) Install the required dependencies

Install the required PHP dependencies by running:

 

2) Install git and clone their repo
that will download around 35Mb. Stay tuned.

 

3) Install and run composer to manage the rest of the dependencies
 

4) Create and configure the database

You will need a MySQL or MariaDB database. I personally use phpmyadmin to create the database movim and the user movim with the permissions on this database. It should be pretty straightforward. Once done, we will configure the database info of movim:

and update the file with the credentials of your database.

 

5) Assign the right permission to your movim folder

We will need to run the movim daemon as the web user (www-data), so first ensure www-data is the owner of the movim folder by running:

 

6) Configure and start Movim

First, I suggest you to have a domain name or subdomain name ready at this stage and with HTTPS connection. (Let’s use Let’s Encrypt). Like my mo.freedif.org.

Then we will log-in as www-data user, configure the db and start movim’s daemon, by doing:

Change USERNAME and PASSWORD by the credentials you want for the admin panel of Movim.

Once done, you should now have access to your movim instance through your URL:8080

 

7) Use a dedicated Virtualhost

It is not very user-friendly to use a port in a URL to access a service. Best is to create a vhost (Virtualhost) file to forward your subdomain or domain name to directly point to the service, with no needs for the port.

For this, you will need to use the proxy_wstunnel feature.

Then modify or create a vhost:

Here is mine:

Once done, simply reload apache:

You should now have access to Movim directly by pointing to your URL.

 

8) Movim at startup

To enable Movim at startup, you canput it as a service using systemd

Here is mine:

Once done, simply enable it and start it

That’s it! You should have a fully functional Movim instance now 😉

 

If you like the project, donate. (paypal)

4 thoughts on “Movim, the decentralized social network

  1. I have been a bit of a fan of Movim for a while and have always want to self-host it. So thank for the HowTo. But if you self-host Movim, where does the data get saved? On your own server or on a Movim server like ‘nl.movim.eu’

    1. Hi,
      I don’t know all the detail but most of the data are “saved” through the XMPP server. Meaning your jabber account.
      If you use your own XMPP server, then you have full control on top of your own instance of Movim 😉

Leave a Reply

Your email address will not be published. Required fields are marked *