ESSE
ESSE (Encrypted Symmetrical Session Engine) An open source encrypted peer-to-peer session system would allow data to be sent securely from one terminal to another without going through third-party services.
ESSE, stands for Encrypted Symmetrical Session Engine, positioned as an engine. The engine is coded in Rust language based on TDN framework, and the cross-platform user interface is built using Flutter.
Features
- Built-in IM Application
- Built-in Group Chat
- Built-in Domain
- Built-in Robot assistant
- Distributed Identity
- Distributed Network
- Synchronization & Distributed Storage
- Multi-identity System
- Multi-platform Support: Android, iOS, iPadOS, MacOS, Windows, Linux, etc.
About ESSE(English) / 关于ESSE(简体中文)
Usage
1. Use Binary executable
2. Compile
2.1. Pre-installed
- Rustup install
- Rust (Nightly Version)
- Flutter (Master channel)
2.2. Compile Rust code to dynamic link library (FFI)
2.2.1. Auto-compile script
It is recommended to use rust.sh to auto-compile the Rust code
2.2.2. Manually compile
Linux / MacOS / Windows
cargo build --release
Linux
cp target/release/libesse.a core/linux/share/libesse.a
MacOS
cp target/release/libesse.a core/macos/share/libesse.a
Windows
cp target/release/esse.dll core/windows/share/esse.dll
cp target/release/esse.dll.lib core/windows/share/esse.dll.lib
Android
- Add your android device target
rustup target add aarch64-linux-android
rustup target add armv7-linux-androideabi
rustup target add x86_64-linux-android
-
Configure your NDK
-
Build the jniLibs
cargo build --release --target=aarch64-linux-android
cp target/aarch64-linux-android/release/libesse.so core/android/src/main/jniLibs/arm64-v8a/
iOS
- Install lipo
cargo lipo --release
cp target/universal/release/libesse.a core/ios/share/libesse.a
2.3. Run flutter to build binary
- Run
flutter run
orflutter run --release
in terminal, or - for Android, run
flutter build apk
, or - for Linux, run
flutter build linux
, or - for MacOS, run
flutter build macos
, or - for Windows, run
flutter build windows
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or
http://www.apache.org/licenses/LICENSE-2.0) - MIT license (LICENSE-MIT or
http://opensource.org/licenses/MIT)
at your option.
Donation
ESSE is still in its infancy, both technical and financial support are welcome. Thank you for your support.
ETH:0xbB64D716FAbDEC3a106bb913Fb4f82c1EeC851b8
Paypal:https://www.paypal.me/cympletech
gitcoin:https://gitcoin.co/grants/2516/esse-an-encrypted-peer-to-peer-session-system
For more information, please visit:
- Website: https://cympletech.com/
- Github: https://github.com/CympleTech/esse
- Twitter: https://twitter.com/cympletech
- E-mail: [email protected]
- Discord: https://discord.gg/UfFjp6Kaj4