0.0.1 • Published 6 years ago

nvivn v0.0.1

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

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 link

Running

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 web

You 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:messages lists all messages
  • op:messages text:hi lists all messages where text is "hi"
  • op:messages since:now-15m lists 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 message
  • op:peers lists 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:

  • :whoami will print your current identity information
  • :hub will 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.)