• chevron_right

      Movim 0.15 – Donati

      Timothée Jaussoin · pubsub.movim.eu / Movim · Sunday, 28 July, 2019 - 12:59 · 4 minutes

    After months of work, Movim 0.15 is finally out!

    This version was planned as a 0.14.2 but was finally retagged as a major release regarding the number of changes, improvements and new features introduced. This #release note will also sum up the changes introduced in the minor 0.14.1 version.

    So what's new in Movim?

    User features

    Local nicknames

    In the configuration panel you can now set a local nickname, this allows you to shorten the identifier you are using on your current pod and gives you a nice looking url for your blog (https://nl.movim.eu/?blog/edhelas%40movim.eu/ becomes https://nl.movim.eu/?blog/edhelas).

    Chats reactions

    In one-to-one chats and chatrooms you can add and remove #reactions to your contacts messages. A first implementation was using the Message Attaching XMPP extension. During the Lyon XMPP Sprint, the feature was refactored to implement the incoming XEP - Message Reactions. During this sprint we also worked with the #Dino and #Poezio developers to make the feature fully compatible with their clients.

    Chat reactions

    Publication sharing

    You can now easily share any article found in Movim inside a conversation by clicking on the send button just bellow the article.

    This uses the References XMPP extension.

    Publication sharing

    Snap!

    Do you want to quickly snap a picture and directly send it to a friend in a discussion or in an article? The new #Snap feature allows you to do that from any devices. Switch between your different cameras, shoot and send. It's that easy!

    The Android application has been updated as well to integrate this feature properly.

    Small improvements

    • You can now slide a one to one discussion to close it quickly, just like the Conversations client allows you to.
    • Search navigation has been improved, there is no page reload anymore to open a new discussion from the Search panel.
    • The Community page was fully redesigned to be snappier and propose contents that might interest you.
    • The UI now handles small disconnections way better . The conversations are not fully reloaded anymore when the connection is brought back.
    • In the configuration you can now define the Chat page as the default one to open when launching Movim, this is quite useful on mobile.

    Fixes, fixes, many fixes

    Lots of small things were fixed here and there.

    • The chat notifications counter was fully refactored to prevent some counter issues, each message is now independently checked as read (or not) in the database
    • The composing/paused chat state are now handled more properly in Movim. Those states are also displayed during chatrooms discussions. This fixes a 3 years old ticket.
    • Websockets are now reconnected properly if the browser is doing some intensive throttling, this was especially the case on Chrome on mobile devices.

    Architecture and technical changes

    From ZeroMQ to Websockets

    One of the biggest changes technically wise was the replacement of #ZeroMQ sockets with WebSockets. This technology was used internally for the inter-processes communications. In the end this replacement allows us to become independent from the php-zmq library without any noticeable performance impact.

    This simplifies even more the deployment of Movim and helps with the packaging of the project.

    New base web server directory

    For the administrators, please notice that the main file, index.php is not at the root of the project anymore but in the public/ directory (as well as many other files). These small changes allow the Web server to expose only the public files without extra configuration. So please point your root repository to that public subfolder.

    This change was about securing the basic setup by default .

    SQLite support removed

    The #SQLite support, introduced in the version 0.14, has been removed for now. We had lots of issues to maintain consistency and fix our migrations for that specific database.

    Some work has been done on the Eloquent library to fix some of those migrations issues upstream but it is too early to have something sufficient to bring back SQLite support in Movim.

    You can still fully use Movim with #MySQL and #PostgreSQL.

    What's next?

    Movim has now reached a stable state, both UX/UI wise as architecturally wise.

    There is still a lot of improvements to do, especially regarding the integration between the social network part and the chat part. Plus, we are always interested to hear about new ideas or improvement suggestions!

    For the 0.16 version we are planning to improve video-conferencing and bring it properly for the mobile devices. Some work is also planned to improve the Communities navigation.

    We need your help

    To continue developing and hosting our infrastructure and to support the project we would be really pleased to cover our monthly expenses, it's not much.

    We already have a few hundreds users connected daily on our main servers. If each of them could give a few euros per month it would easily allow us to reach that goal.

    You can help us by giving monthly on our official Patreon page or by using Paypal.

    • chevron_right

      Movim 0.13 – Coggia – Christmas Release

      Timothée Jaussoin · pubsub.movim.eu / Movim · Sunday, 24 December, 2017 - 12:34 · 4 minutes

    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.

    Chatrooms

    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.