• Mo chevron_right

    Movim 0.14 - Scotty - Anniversary Edition

    Timothée Jaussoin – / Movim – Sunday, 18 November - 09:17 edit

Movim is 10 years old and it's with a lot of satisfaction that we are bringing this version 0.14 after 9 long months of development.

Movim is a new concept of social network with instant messaging features that sits between #Instagram, #WhatsApp for the user experience and federated networks such as #Diaspora or #Mastodon.

Ou goal is to bring everything you need to communicate with your community, classroom, company or friend circle in one simple application. Movim can easily be deployed on a server and rely on the XMPP protocol to federate them. Therefore Movim can, by design, already communicate with many XMPP/Jabber clients and doesn't need you to create a new account if you already have an XMPP one 😋.

This new #release is coming with several core changes that greatly improved the stability and performances of the project but it also brings many design and navigation improvements to always provide you with the best experience regarding publication of content and messaging.

Movim and PHP 7.3

Movim is currently having technical issues to run on the upcoming version of PHP 7.3.

This is a known and documented issue that is caused by some incompatibilities with one of the official dependencies of PHP, php-zmq, that is used at several places in the core of the daemon.

A ticket has been open to track and give updates about this issue: Movim is not working with PHP 7.3.

Technical changes

Before presenting the improvements and new features let's talk a bit about what was done under the hood.


The biggest change in this version is certainly the complete replacement of the database layer from the historical, Movim specific, Modl library to the widely used Eloquent.

This work has been detailed in a previous article: From Modl to Eloquent, or how to change a social network database engine. To sum it up, it brought coherence in the database of the project and a huge performance boost on all the pages.

Without any cache involved, Movim is now loading pages in only a few hundred milliseconds.

A little chart, people always like charts

The new database structure is also keeping good performances with a huge amount of data (millions of messages, thousands of articles on our official pods a this moment).

With Eloquent, Movim is compatible with #MySQL, #PostgreSQL but also, since this version, with #SQLite which can greatly simplify the deployment of small instances. Thanks to JKingweb for his awesome work on this port.

Packaging and dependencies

Scotty will be the first version to be packaged for the #Debian project. Big improvements were made in the dependencies of the project thanks to the work of our contributors mirabilos and nik. Several were fully removed and some are replaced with more stable and reliable ones (like the SASL library, used for the authentication). This package will come a bit later regarding the issue that we have with PHP 7.3.

Movim 0.14 is also the first version to drop the support of PHP5 (now deprecated) to focus on PHP7+.

What's new?

After being a bit boring with those technical changes let's have a look at what you will find as a user in this new version.


The publication of articles is now simpler than ever and has been fully redesigned. You can quickly publish a link or upload a picture directly from the home page or you can still switch to the more complete form to write long articles (like this one 😉).

A more simple publication form

When sharing a link that contains several pictures you can now pick the one that you would like to include in your publication (or no picture at all).

Picking the perfect kitten picture :3

The publication visibility toggle has been redesigned to be clearer as well.


The cards containing the preview of the articles were fully redesigned to be more compact and adaptable to smaller screens.

The news page, contact publications and communities are now paginated allowing simpler navigation.

If you receive articles containing NSFW content and you asked to not display them in the configuration, Movim will now display a spoiler overlay on top of them.

Click on the spoiler to show the content

The search feature has been improved and now supports searching in tags as well.

The loading performances of the articles and comments were also greatly improved. Navigating between the articles feels like a breeze.


All the notifications are now grouped in a panel easily available from the main menu both on desktop and on mobile. Thanks to XMPP all those notifications are received and synchronized in real time 😀.

The new notifications panel

Those notifications contain likes, comments and invitations that you received.


Several message synchronisation issues were fixed allowing Movim to handle properly the receival and read acknowledgement of the sent messages.


The chatrooms were slightly redesigned, the moderators messages are now shown with a specific color. The messages addressed to you are also displayed with a colored border.

Improved design for the chatrooms

You can now also publish Stickers and emojis in your favorite chatrooms.

But also!

You can now use Movim to authenticate to third party websites using your XMPP account. On the websites that implement that feature, you just have to give your XMPP account and a notification will be displayed in Movim.

The authentication notification

You just have to accept it and you'll be automatically authenticated to the external website. How easy is it?

More information there Journal of a Bot - Authentication with XMPP.

Several small bugs were also fixed in the Video Conference feature. Movim is now clearer about the state of the video session and is giving proper feedbacks if the contact hung-up.

The pictures can be directly previewed within Movim before going to the external link.

Around the project

The new redesigned version of the official website will now present more clearly what the project is about and all the exciting features that you can use within Movim.

You will also find there all the apps for your desktop (Windows, macOS, Linux) and your Android phone.

What's next?

We are not done yet! There is already some plans for the upcoming release.

The 0.15 will focus on the integration of the OMEMO end to end encryption protocol. The related ticket has been reopened with more proper explanations. This will be a big risky project.

Some improvements will also be done on the suggestions of the chatrooms and communities to allow Movim users to explore and discover content more easily.

In the meantime we all invite you to try out this new version on our official instances or deploy it on your server. You will find everything to do so on the official website.

You can also always help us with donation to the project or support us on Liberapay or Patreon :). Giving feedbacks or talking about Movim around you is also helping us a lot!

That's all folks!

  • image
  • favorite

    9 Like

    W. Ferpit , Marzanna , Bigou , Étienne Deparis , roelofpieter , xavier , arie , Laurent Defours , Didier Link


  • person

    29 December Guillaume

    Greetings from Movim 0.14 on Debian!
    Laravel seems interesting, I might use the Database component for a personal website

  • Mo chevron_right

    Little delay for the 0.14 release

    Timothée Jaussoin – / Movim – Saturday, 27 October - 20:39 edit

As you may have noticed, the 0.14 #release of #Movim is not there yet. We just found out that Movim had serious issues running with #PHP 7.3 RC2, this seems to be caused by some bugs regarding the #sockets management in this new PHP version.

We are currently investigating that and hope that it will be fixed for the final PHP 7.3 release.

Update: The issue seems to come from a bug between php-zmq and PHP 7.3, there is some work in progress to fix the issue, more info there mkoppanen/php-zmq - Fix for PHP 7.3.

  • favorite

    1 Like



  • 27 October Dominik George

    I suggest tat now you are fiddling with the socket code anyway, then please look into that thing with allowing using Unix sockets instead of TCP (you might remember that from MiniDebconf in Hamburg). That would ease things in Debian a lot.

  • 29 October Aoirthoir An Broc

    thats ok we are eagerly awaiting and patient

  • Mo chevron_right

    From Modl to Eloquent, or how to change a social network database engine

    Timothée Jaussoin – / Movim – Tuesday, 17 April, 2018 - 08:53 edit

After 50 hours of work, more than 5000 line added and 10000 deleted, and 250 files changed it's finally done. This is the biggest refactoring done in the history of the project.

Movim is a social network and instant messaging web client for the XMPP network. It grab data from XMPP and store them temporary in a SQL database to present it in a light and simple UI to the users.

A Community on Movim, all the posts here are on XMPP and cached in the Movim database

The database library is therefore a really important piece of the architecture.

The idea was to replace the historical database layer (Modl) with Eloquent the reference database library of the Laravel project. This will bring many new interesting features to the project:

  • Have a more organized database with proper relations between the tables, have indexes and foreign keys (some of those features were missing in Modl)
  • Be able to do advanced queries to present more interesting content to the user
  • Simplify the code of the project (this is also why several thousands lines were removed from the code base)

Most of the existing features were ported to the Eloquent, some others are temporary disabled or simplified. Those, like the suggestions of Posts and Contacts, will be improved in the upcoming months.

You can also expect many small bugs here and there. The plan is to take a couple of weeks (months?) more to stabilize the code and do a proper 0.14 release.

For those that want to try out the current release, the Installation Tutorial on our wiki has been updated to reflect the changes introduced in this release. Here is a small sum-up.

Migrate from 0.13.* to 0.14+

Be sure to do a backup of your database before. It only takes a few seconds and it will allow you to do it again if you have any trouble during the migration. For PostgreSQL you can do.

pg_dump -d movim_db > movim_backup.sql

Then you can turn off the Movim service, if you are using systemd you can do.

service movim stop

Go to the Movim path and pull the new code, then update the Composer dependencies.

git pull
composer install

You don't have to change anything in the configuration, the daemon will also refuse to start if some of the following steps are not finished properly.

You can then migrate the database to create the new structure.

php vendor/bin/phinx migrate

Movim is also coming with a migration script. It will:

  • Move the existing users and their configurations to the new tables
  • Migrate the default Movim configuration
  • Migrate the database cache
  • Migrate the chatroom invitations script
  • Destroy all the old Modl table

You can call this script with the following command

php vendor/bin/phinx seed:run -s FromModlToEloquent

Once everything is done you can then restart the daemon :)

service movim start

Like always you can help us by covering our monthly costs on the Patreon page or by doing a one time donation on Paypal.

You can also help us by writing blog posts, tutorials or talk about the project on the other platforms (Reddit, Twitter, HackerNews…) :) If you have remarks or questions, do not hesitate to join us on the official chatroom,

That's all folks!

  • image
  • favorite

    10 Like

    debacle , Adrien Dorsaz , odomar , Roelof Pieter , Baudouin Feildel , valeg , bigou , bigou , Bigou , Jean Bob

  • Mo chevron_right

    Timothée Jaussoin – / Movim – Monday, 16 April, 2018 - 06:26

    Meetup in #Stockholm the 19th of April in the evening. Join us there to talk about Movim and related things :)

  • Stockholm Movim group

    This group is for anyone using Movim or curious to discover this social network."Movim (My Open Virtual Identity Manager) is a distributed social network built on top of XMPP, a popular open standards

  • favorite

    7 Like

    Timothée Jaussoin , arie , paulfree14 , Marzanna , Appiah , Appiah , debacle

  • Mo chevron_right

    A new release is coming, help up with the #translations

    Timothée Jaussoin – / Movim – Monday, 19 February, 2018 - 21:54 edit

The next #Movim version is coming soon, lots of nice improvements have been added since the Christmas #release, Movim 0.13 - Coggia.

Several new features were added those past few weeks like a picture picker when URL that contains several pictures are shared, a spoiler on NSFW content in the news feed, improvements in the video-conferencing feature but also code cleanup and stability improvements. A more detailled article will follow the new release, as usual :)

But before packing everything up, we need your help! We would like you to help us translating Movim in your language to make it available to everyone. You can join us on the Transifex platform (you can login using your Github account as well) and start translating directly from your browser.

Thanks to all the exisiting translators Movim is now available in close than 30 languages. Let's see if we can fully translate the project in even more than that! Some languages like the Dutch, the Russian or the Norwegian are only missing a few dozen sentences to reach the goal :)

Lets bring Movim to the maximum of people for 2018!

  • image
  • favorite

    9 Like

    odomar , florian.graetz , Timofey Kostenko , debacle , arie , Ravenbird , JStargazer , Roelof Pieter , Alcides


  • 28 February, 2018 arie

    Signed up for the Dutch translation team, let's see how I'll do ;)

  • Mo chevron_right

    Timothée Jaussoin – / Movim – Saturday, 20 January, 2018 - 10:01 edit

    A nice article, in German that present Movim, what do you think of the conclusion :) ? #hasecke #german #movim

  • link


    Kick Ass Social Network on top of XMPP

  • favorite

    3 Like

    Paul Schaub , debacle , Kristian


  • 20 January, 2018 Johannes Brakensiek

    thanks for sharing that blog post. I don't think that the number of users has anything to do with programming language either. it's rather about software quality, team communication and marketing. many successful distributed networks did have nice backing campaigns or were supported by successful American companies or people. many successful projects are American though. For a long time a problem of Movim was that it was quite focused on a French community, imho. But I think it's quite worth it to support a project that's mainly European and targets European privacy protection as well.

  • 21 January, 2018 Dominik George

    I renamed it to „Gemeinschaften“ for a reason ;)! For everyone knowing German TV commercials: Don't call it Gruppen!

  • 21 January, 2018 juh

    Thank you very much for sharing my post about Movim. There were some discussions on Diaspora about the post as well. And I hope that my cursory overview can attract a handful of new users to a project which is really amazing.

    The french centric community might be a reason, that I overlooked Movim until now. Only lately I recognized a couple of Open Source projects from France. The french open source community is a lot more active than I thought, but perhaps they are too busy with themselves. We need more networking in Europe.

    I don't think that calling Movim a European Project is a good idea. Mastodon is strong in China, USA and Europe. Internet and technology should not be labelled European. That narrows the focus too much. We need a European infrastructure of servers but the social network in itself is global. Why set boundaries if there are no?

    I cannot say a word about things Johannes mentioned: software quality and team communication. But being a marketing guy I would say that the website is a good start and the interface is looking nice. Perhaps it needs more drive. Some years ago Diaspora attracted new users as it presented itself as a Facebook alternative. Mastodon is about tweeting without Twitter. So people know what they want to do on the network. I must say that I really like Diaspora because there are many people with different interests. Diversity is great. Mastodon looks good, but it is quite boring. It's Twitter without all the users. ;-)

    Why does Movim exist and why should I care? These are the questions the network or the people who use it should answer. I don't have an answer. But looking at the foundation (XMPP), the website and Movim Hello Beta I would say that Movim could be the place where all communication come together: chatting, microblogging, telephoning, videoconferencing, live video news channels etc. This is a lot of things that need a rock solid, future proof, and scalable technology. This is why I am a little bit nickpicking about the programming language. Imaging an influencer with 1 million followers standing in front of the White House talking about the new hair color of the US-president. Could Movim bear that challenge?

  • 23 January, 2018 debacle

    Dominik, I'm German, but I don't know what is wrong with "Gruppen". Since long I don't have a TV set, so maybe I'm missing some context?

    juh, I had to laugh about "Mastodon: It's like Twitter without all the users"! I tried to use Mastodon and have account there, but I'm too stupid to understand the concept.

    My favourite social network at the moment is Diaspora, too, but I would be prefer a more solid technical base. A Diaspora clone based on XMPP would just be perfect :~)

  • 25 January, 2018 Johannes Brakensiek

    juh, thanks for your reply. Of course Movim should not be limited to European borders. It's just a feature it aims the needs of people in the EU especially well.
    Regarding the PHP technology I would suggest that the daemonized PHP architecture is somewhat limited regarding performance. (PHP itself is not - it is known to scale very well horizontally. But of course horizontal scaling is difficult when you use a PHP daemon.) But I think that's not the point: Having a dezentralized structure load can and should be distributed over a network being able to bear higher loads. So I think it's part of the ongoing development process to make XMPP and its pubsub servers be able to handle even higher amounts of people using it.

  • 29 January, 2018 juh

    Good point, Johannes. How does this pubsub federation works? I have the impression that content from a pubsub server is only fetched when I click on a link. The same what happens when I click on an external link on a website via HTTP. When I subscribe to a channel I would think that the content is preloaded when I lock in. That would speed up things.

  • person

    2 April, 2018 florian.graetz

    A nice wrap-up, although the last paragraph is a little discerning. However, the author pointed out correctly, that the key to social network is reaching a critical mass of users. The major reason, why new users sign up, is either that many of their friends are already members (that's how facebook drags in people), or that the new network provides outstanding features (that is how snapchat succeeded in the first place).

    So, why should new users favour movim over other decentralized social networks like Diaspora? The key features are basically the same. I hate to bug you with this again, but end-to-end encryption maybe an outstanding feature, which would even companies allow to use a social network for internal communication. This in turn could generate a steady cash flow. [And yes, I have read the issue, which discusses, why this is hard or nearly impossible to implement server-side.]

    By the way, all other decentralized social networks are leading similar discussions. In my humble opinion, the key is storing the private parts of the timeline on the user's device(s) instead of persisting them on the server. New messages would be pushed end-to-end-encrypted. Whenever new contacts are added, they would receive the entire timeline from the user's device immediately after the contact has been initiated. You have to keep in mind, that removed contacts may still keep your private data.

  • Mo chevron_right

    Movim 0.13 – Coggia – Christmas Release

    Timothée Jaussoin – / Movim – Sunday, 24 December, 2017 - 12:34

Two months after Movim 0.12 – Lovejoy here comes the new release of #Movim for #Christmas.

Rework of the Movim core engine, here comes ZeroMQ

This is maybe one of the biggest changes that is brought to our users for this version.

Since 2014 Movim is using a full real-time architecture which was slightly improved and optimized through the years. Movim Coggia comes with a totally new way of handling and distributing the events and messages in the core of the project.

ZeroMQ Logo

The daemon is now using ZeroMQ (and the related PHP library php-zmq) to take care of all those internal communications. This allows Movim to be fully multi-threaded and to properly prevent some user sessions to slowdown others if they are using the backend intensively.

Following those changes, many buffers were removed to unlock the full potential of #ZeroMQ. This means that the messages and events are now directly pushed to you (or to your server) without waiting lanes. Movim now feels way more snappier on all devices (especially mobiles).

Animations for a smooth UI

Related to those changes, some small #animations were introduced in the UI to make it smoother to load and be displayed. This allows Movim to push a little bit forward our goal: bring modern XMPP features in a light and fast interface to everyone :)

Here comes Ajax, again!

This version also brings back HTTP #Ajax requests in the project. Those will only be used in specific cases, mainly to ensure the good delivery of some requests to the backend.

The first place where this is now used is for the chat messages delivery, they were previously sent using Websockets. This previous method didn't guaranty the message was successfully handled by the backend. By sending those messages using Ajax requests we can now know if we had a network failure or some troubles on the line and then display a proper message to the user.

This small change is especially useful on mobile when the network is unstable and had proved to work quite well on 2G networks :)

Nigthmode, your eyes will love it!

This version is not only coming with changes in the project's pipes but also brings some nice improvements and features to our ever-growing user base.

The Movim Nightmode

A big refactoring was made in the color handling of the project, allowing Movim to now handle more easily custom colors (and maybe unlock "themes" in the future). The first step was then to offer our users a #Nightmode. You can enable it in your configuration panel :)

And because the configuration is shared between all the Movim instances you'll be able to have it everywhere you log-in.


Several bugs were fixed in the chatroom session handling to take care of the different behaviors between the existing XMPP servers. A loading state was also added to notify the user to wait for the full connection of his account with the chatroom before doing anything with it (posting messages, inviting users…).

The connected users list is also now sorted by name and Movim gives you some proposal to autocomplete your chatroom address when you are typing it.

But also…

The login form has been slightly redesigned and simplified as well as the form to configure your Community (the advanced form is still available by pressing the menu button).

Redesigned login page

The Miho stickers pack has been fully completed and now includes 16 unique stickers for all our users :). The full pack has also been published on the LINE Creator Market, if you are also using LINE you can now support the project by buying (or offering) this pack of stickers.

The Likes are now collapsed in one little block below the articles to give space to the comments.

Collapsed likes to gives space to the comments

With the help and feedback of the users, many small bugs related to the articles publication were fixed.

ReactPHP, the library that Movim is using to handle the real-time part of the project has been updated to its latest version.

Help us to push Movim further in 2018!

In 2018 we would like to do everything to bring Movim to the maximum of users and show them all the possibilities offered by the platform. For that we will need your help.

You can naturally help us by directly contributing to the project by discussing new features and improvements on our official chatroom, fixing bugs or helping with the translations.

But we are especially looking for people that would like to talk about Movim online by writing articles telling how they are using the project, giving nice examples and tutorials on how to play with Movim and the XMPP environment and more generally spread the word about project.

Finally you can help us by giving a bit of money to cover our monthly costs for the servers, domains and other expenses. We hope that 2018 will see Movim and the Movim services to be fully funded by the community. To help us with that you can become a Movim Patreon or donate some money using Paypal.

We wish a Merry Christmas and a Happy New Year to all of you. See you in 2018 for more exciting features and surprises!

Happy New Year 2018

The Movim team.

  • favorite

    10 Like

    Miguel A. Arévalo , Marzanna , JStargazer , Didier Link , invisible , paulfree14 , debacle , Kristian , Baudouin Feildel , bigou