Firehose for the federated social web
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)
You need clone the git repository:
git clone https://github.com/e14n/ofirehose.git
And install the dependencies using
cd ofirehose npm install
OFirehose uses databank. Any databank driver should work.
redis are probably the best
bets for production servers, but the
disk or even
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
OFirehose requires a configuration file located in
~/.ofirehose.json; either of the two options are fine. You can also specify a different config file with
In addition to JSON configuration files, you can also pass these options directly on the commandline, as well as via environment variables prefixed with
- 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
- cert If you're using SSL, the path to the server cert, like
- 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
443when key is set or
80otherwise. Change this if you've got some kind of load-balancer.
Copyright 2012-2014 E14N https://e14n.com/
OFirehose is licensed under the Apache License Version 2.0. See the LICENSE file for the full license text.