---- info ----
noirchat/nchat is a decentralized and LAN-based communication program that is focused on minimalism, efficiency, and, to some degree, modularity. It supports the following network communication methods:
UDP broadcasting, for chat-style and "broad" communication
*INCOMPLETE* UDP multicast, for finer control and higher efficiency than broadcasting
*INCOMPLETE* UDP peer-to-peer, for non-TCP based direct comms
*INCOMPLETE* TCP sockets, for direct peer-to-peer communication
In comparison to most communication programs geared towards decentralization, noirchat attempts to separate the user interface from the networking code as much as is possible. This enables multiple frontends to easily be developed for almost any platform.
Even further, noirchat provides peer-to-peer or peer-to-group encryption via a trusted network/shared password scheme - in the case of a direct peer-to-peer comm, following the initial handshaking procedure encrypted with the trusted key, a new, temporary key is agreed upon and used for future communication between those peers.
---- what does noir chat mean ----
noir - black, also intended as "hidden"
chat - as in communication, as well as "cat"
As per French grammar, when the adjective comes before the noun, it is meant in a figurative sense, rather than a literal, descriptive sense. In this way, 'noir' is figuratively modifying chat, not literally, and as such, comes before rather than after the noun. It makes a degree of sense, honestly.
---- compiling ----
At the moment noirchat compiles into the following binaries:
nchat: primary client
Fully-supported terminal client, relies on nothing more than an
ANSI-compliant terminal interface - colors optional
xnchat:
state: in-complete stub, basic interface w/ buttons
Fully-supported X11 client, relies on nothing more than Xlib
To compile either, simply type:
make nchat
or
make xnchat