HOME

TheInfoList



OR:

Movim (My Open Virtual Identity Manager) is a
distributed social network A distributed social network or federated social network is an Internet social networking service that is decentralized and distributed across distinct service providers (similar to email, but for social networks), such as the Fediverse or the I ...
built on top of
XMPP Extensible Messaging and Presence Protocol (XMPP, originally named Jabber) is an open communication protocol designed for instant messaging (IM), presence information, and contact list maintenance. Based on XML (Extensible Markup Language), it ...
, a popular open standards communication protocol. Movim is a
free and open source software Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
licensed under the AGPL-3.0-or-later license. It can be accessed using existing XMPP clients and
Jabber Jabber may refer to: * The original name of the Extensible Messaging and Presence Protocol (XMPP), the open technology for instant messaging and presence. * Jabber.org, the public, free instant messaging and presence service based on XMPP. * Jabber ...
accounts. The project was founded by Timothée Jaussoin in 2010. It is maintained by Timothée Jaussoin and Christine Ho.


Concept

Movim is a distributed social networking platform. It builds an abstraction layer for communication and data management while leveraging the strength of the underlying XMPP protocol. XMPP is a widely used open standards communication platform. Using XMPP allows the service to interface with existing XMPP clients like
Conversations Conversation is interactive communication between two or more people. The development of conversational skills and etiquette is an important part of socialization. The development of conversational skills in a new language is a frequent focus ...
,
Pidgin A pidgin , or pidgin language, is a grammatically simplified means of communication that develops between two or more groups of people that do not have a language in common: typically, its vocabulary and grammar are limited and often drawn from s ...
,
Xabber Xabber (from XMPP and Jabber) is a XMPP client for the Android_(operating_system), Android Operating System. It is developed as an open source Project on GitHub and is licensed under the GNU GPL v.3 license. The original developers are from a so ...
and
Jappix Distributed social network projects generally develop software, protocols Protocol may refer to: Sociology and politics * Protocol (politics), a formal agreement between nation states * Protocol (diplomacy), the etiquette of diplomacy and affa ...
. Users can directly login to Movim using their existing Jabber account. Movim addresses the privacy concerns related to centralized social networks by allowing users set up their own server (or "pod") to host content; pods can then interact to share status updates, photographs, and other social data. Users can export their data to other pods or offline allowing for greater flexibility. It allows its users to host their data with a traditional web host, a cloud-based host, an
ISP An Internet service provider (ISP) is an organization that provides services for accessing, using, or participating in the Internet. ISPs can be organized in various forms, such as commercial, community-owned, non-profit, or otherwise private ...
, or a friend. The framework, which is being built on
PHP PHP is a general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by The PHP Group. ...
, is a
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
and can be experimented with by external developers.


Technology

Movim is developed using
PHP PHP is a general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by The PHP Group. ...
,
CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone techno ...
and
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
. The software initially used the Symfony framework. Due to the complexity of the application and the XMPP connection management, developers rewrote Movim as a standalone application. It now has its own libraries and APIs. Movim was earlier based on the JAXL library for implementing XMPP. JAXL has been replaced by Moxl (Movim XMPP Library), licensed under the AGPL-3.0-only license, to manage connecting to the server through the XMPP
WebSocket WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. The WebSocket protocol was standardized by the IETF as in 2011. The current API specification allowing web applications ...
protocol. This is claimed to have reduced the code complexity and performance load while providing better error management. The platform used Modl (Movim Data Layer) until the version 0.13, a PHP database layer using DAO Patterns for database interfacing. The project was then migrated to the
Laravel Laravel is a free and open-source PHP web framework, created by Taylor Otwell and intended for the development of web applications following the model–view–controller (MVC) architectural pattern and based on Symfony. Some of the features ...
Eloquent ORM.


Architecture

The project consists of a set of libraries that provide an abstraction layer on top of XMPP for communication and data management. Requests are handled by instances of a derived interface controller class. This methodology is similar to the query processing in a
MVC MVC may refer to: Science and technology * Maximum-value composite procedure, an imaging procedure * Multivariable calculus, a concept in mathematics * Multivariable control, a concept in process engineering * Mechanical vapor compression, a desal ...
framework. Access to the interface is provided by a system of widgets, allowing through introspection capabilities, to write
AJAX Ajax may refer to: Greek mythology and tragedy * Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea * Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris * ''Ajax'' (play), by the ancient Greek ...
elements without using
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
. The page display uses a system of nested templates.


See also

*
Diaspora A diaspora ( ) is a population that is scattered across regions which are separate from its geographic place of origin. Historically, the word was used first in reference to the dispersion of Greeks in the Hellenic world, and later Jews after ...
*
Friendica Friendica (formerly Friendika, originally Mistpark) is a free and open-source software distributed social network. It forms one part of the Fediverse, an interconnected and decentralized network of independently operated servers. Features Friendi ...
* GNU Social *
Comparison of social networking software Social networking software provides the technological basis for community driven content sharing and social networking. See also Comparison of software and protocols for distributed social networking, especially for open-source software. Comparis ...
*
Comparison of cross-platform instant messaging clients The landscape for instant messaging involves cross-platform instant messaging clients that can handle one or multiple protocols. Clients that use the same protocol can typically federate and talk to one another. The following table compares gener ...
*
Comparison of microblogging and similar services : The tables below compare general and technical information for some notable active microblogging services, and also social network services that have ''status updates''. General information Features An overview of integral features. Ext ...
* Comparison of VoIP software


References

{{reflist


External links


Movim Home Page

Movim Github
Social networking services Microblogging software Distributed computing Free software Software using the GNU AGPL license Free instant messaging clients Instant messaging clients Free groupware Free communication software
Jabber Jabber may refer to: * The original name of the Extensible Messaging and Presence Protocol (XMPP), the open technology for instant messaging and presence. * Jabber.org, the public, free instant messaging and presence service based on XMPP. * Jabber ...
Free XMPP clients XMPP clients Instant messaging Groupware Social software Communication software
VoIP software Voice over Internet Protocol (VoIP), also called IP telephony, is a method and group of technologies for the delivery of speech, voice communications and multimedia sessions over Internet Protocol (IP) networks, such as the Internet. The terms In ...
Free VoIP software VoIP software