Skip to content

Instantly share code, notes, and snippets.

@manfromth3m0oN
Created November 1, 2019 16:13
Show Gist options
  • Save manfromth3m0oN/84b9b1603ce97998c1dc9fb963de79db to your computer and use it in GitHub Desktop.
Save manfromth3m0oN/84b9b1603ce97998c1dc9fb963de79db to your computer and use it in GitHub Desktop.
messaging.md

Rust based TUI and GUI P2P messaging app

  • Each node runs an server which recives incoming messages
  • Nodes know of eachothers IPs through a central server which runs identification
  • Users can sign up for an identification through a webserver
  • The user identification is run on my rpi and redis (or potentially on GCP)
  • Users will be able to create groups This is a very big maybe

  • Users will be able to see who is on or offline at any given time as that information will be retrives from the server whenver the user requires
  • Message history will be saved as a file on disk
  • Messaging will probably be done on 465 as it is not 80 or 443 and is probably unmonitored

TUI

GUI

Signup webapp

  • This will probably just use flask cos its ezpz
  • Or maybe rocket as its basically just flask in rust
  • Redis will broker the identification requests probably stored in the format
    UserId (Hash of their username + password)
          Username
          Password hash (SHA256)
          isLogedin (Storred as either True or False)
          currentIP (Will be 0 if user is offline)
    

Server

  • runs redis (duh)
  • serves over http(s)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment