# 🚧 Beau-gosse-du-92 🚧 The goal of this project is to propose a new open-source implementation of the famous MSN messenger instant-messaging client. [![Presentation](medias/presentation.png)](medias/presentation.mp4) # Technical stack ## Back-end This project is based on the [Matrix.org](https://matrix.org/) building blocks (back-end and front-end SDK) to avoid to reinvent the wheel. This solution provides: - [Open-source protocol](https://spec.matrix.org/v1.9/). - Features expected for a messaging solution in 2024 (multi-devices management, emojis, integrations, redaction, spaces, ...). - Multi-platforms clients (Android, iOS and Webclient). - SDK available for each platform and a new Rust sdk supporting all the previously listed platforms. - Conference stack ([Element Call](https://github.com/element-hq/element-call)). - End-to-end encryption. - Federation management. - Capability to host all the back-end infrastructure by ourself. ## Front-end First, the project involves writing a client compatible with the [Matrix.org (client-server API)](https://spec.matrix.org/v1.9/client-server-api/) protocol. Even if the Rust SDK is still in beta, it seems to be the future one (cf. [Element X - experience the future of Element!](https://element.io/blog/element-x-experience-the-future-of-element/)) and a good choice for someone starting a new client... from my point of vue. The SDK choosen, a Rust (to avoid to use the bindings provided by the matrix-rust-sdk and mostly because I want to learn Rust) graphical library should be selected. The [Dioxus](https://dioxuslabs.com/) one seems to do the job: - React-inspired library for Rust. - Multi-platforms (use of Webview or WGPU-enabled renderers). # TODO - [ ] Design system ? - [ ] Implement MSN messenger features using Matrix.org sdk...