mirror of
https://github.com/creating2morrow/neveko.git
synced 2024-12-22 19:49:24 +00:00
3.5 KiB
3.5 KiB
NEVMES
NEVidebla-MESago (invisible message)
gpg and i2p made simple for end-to-end encrypted, secure comms
About
- send messages over the invisible internet
- vanity base32 addresses (advanced)
- automated mandatory gpg key encryption
- xmr payment integration
Dev
- stack - rust (egui, rocket), lmdb, i2p-zero, monero(rpc, daemon), gpg
- install dependencies
- ubuntu example:
sudo apt update -y && sudo apt upgrade -y
sudo apt install -y libssl-dev build-essential libgpgme-dev
- ubuntu example:
- download and run i2prouter start (optional: setup to run on boot similar tor daemon)
git clone https://github/com/creating2morrow/nevmes
cd nevmes && ./scripts/build_all_and_run.sh "-- -h"
- gui built with rust egui
Contributing and Releasing
| branch | |tag and release|
dev -----------------|-------------------------------------------->
v0.1.0 -----------tag v0.1.0 (delete branch)
v0.2.0 |-------------------------------------------->
main -------------------------------------------------------------->
- code on dev branch
- pull request to dev branch
- merge dev to vX.X.X
- merge vX.X.X to main
- tag release v.X.X.X every friday (if stable changes)
- release binaries from the
cargo-build-release
workflow with notes - create next v.X.X+1.X branch and delete old release branch
- release bug fixes as appropriate to v.X.X.X+1 branch when ready
Workflows
name | branch | purpose |
---|---|---|
cargo-build | main,dev | ensure code compilation and build success |
cargo-audit | main,dev | run security audit against RustSec database |
cargo-build-release | v0.* |
publish production ready binaries |
API
- remote/programmatic access
- secured by wallet signing
- jwt and jwp
- see curl.md
Binaries
- nevmes-auth -
internal
auth server - nevmes-contact -
internal
add contacts server - nevmes-core - application core logic
- nevmes-gui - primary user interface
- nevmes-message -
internal
message tx/read etc. server - nevmes -
external
primary server for contact share, payment, message rx etc. - monerod - (not included) monero-wallet-rpc needs this
- can be overriden with remote node
- use the
--remote-node
flag
- monero-wallet-rpc - (not included) interface for xmr wallet ops
- i2p-zero - (not included) tunnel creation
- i2p - http proxy (not included, *i2p-zero http proxy not working)
Manual
Known issues
- gui password and screen lock needs fixing up
- timeout out JWP payment approval screen with infinite loading
- prove payment edge where payment succeeds but jwp is empty, currently require new payment
- message retry logic (untested)
- test framework (in progress)
- docs on all
fn
andstructs
- i2pd installer on home screen?
- and more daemon info and wallet functionality (multisig)