nvivn v0.0.1
nvivn
🚨 Warning: early and experimental 🚨
More at nvivn.io. Here's an early demo video if you're into that sort of thing.
Installation
npm install
npm linkRunning
Now you can run nvivn server in whatever directory you like. It'll start up at http://localhost:9999.
Web UI
There's a separate web UI that you can build and run by running:
npm run webYou can view that at http://localhost:9966
What?
So both the server and the web UI create an instance called a hub. A hub has an identity (automatically created on first launch) and a message log. The server version is nearly identical, except that it writes messages to the file system, and can discover peers on the local network using zeroconf/mdns.
Commands
All actions are triggered via commands. Some examples:
op:messageslists all messagesop:messages text:hilists all messages where text is "hi"op:messages since:now-15mlists all messages that this hub has gotten in the last 15 minutes (can also be a Unix epoch time, or anything elastic search's date math syntax handles)op:create-message | text:stuff anotherthing:"whatever you want"creates a new messageop:peerslists known peer hubs
These can be executed locally with nvivn <command> in the working directory of your hub, whether or not the server is running. (Those commands operate directly on the files.)
In the web UI, you can use these commands, as well as a few extras:
:whoamiwill print your current identity information:hubwill print your current hub:set-hub | "some-server:port"will switch to a new hub
You can also use any of the command line commands. (The "op:" prefix is optional.)
7 years ago