Skip to content

e14n/ofirehose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Evan Prodromou
Feb 16, 2018
c3e6417 · Feb 16, 2018
Feb 16, 2018
Feb 21, 2012
Jan 4, 2014
Feb 16, 2018
Jan 1, 2018
Feb 16, 2018
Nov 18, 2017
Nov 18, 2017
Dec 28, 2017
Feb 16, 2018
Feb 24, 2012
Dec 28, 2017
Feb 16, 2018
Feb 16, 2018

Repository files navigation

OFirehose

Firehose for the federated social web

Installation

Prerequisites

You'll need four things to get started:

  • node.js 4.x or higher
  • npm 2.15.x or higher (4.x or above preferred)

Local install

You need clone the git repository:

git clone https://github.com/e14n/ofirehose.git

And install the dependencies using npm:

cd ofirehose
npm install

Database setup

OFirehose uses databank. Any databank driver should work. couchbase, mongodb and redis are probably the best bets for production servers, but the disk or even memory drivers can work for testing.

If you're confused, just use the MongoDB one, databank-mongodb.

You can find other drivers like so:

npm search databank

You can install in the ofirehose directory as a normal dependency. For example, the databank driver for MongoDB:

npm install databank-mongodb

Note that you also need to install and configure your database server. For example, in Debian derivatives:

apt-get install mongodb

Configuration

OFirehose requires a configuration file located in /etc/ofirehose.json or ~/.ofirehose.json; either of the two options are fine. You can also specify a different config file with -c.

In addition to JSON configuration files, you can also pass these options directly on the commandline, as well as via environment variables prefixed with OFIREHOSE_.

Available parameters

  • driver The databank driver you're using. Defaults to memory; not recommended for production.
  • params Databank driver params; see the databank driver README for details on what to put here.
  • key If you're using SSL, the path to the server key, like "/etc/ssl/private/myserver.key". Defaults null.
  • cert If you're using SSL, the path to the server cert, like "/etc/ssl/private/myserver.crt". Defaults null.
  • server The address on which "publish/subscribe" PubSubHubbub/WebSub will happen. Defaults to machine hostname.
  • address The address to listen on. Defaults the same value of server option. Use this if you've got some kind of load-balancer or NAS or whatever and your local IP doesn't map to the IP of the hostname.
  • port Port to listen on. Defaults to 443 when key is set or 80 otherwise. Change this if you've got some kind of load-balancer.

License

Copyright 2012-2014 E14N https://e14n.com/

Copyright 2017 AJ Jordan [email protected], Camilo QS [email protected]

OFirehose is licensed under the Apache License Version 2.0. See the LICENSE file for the full license text.