Go to file
2018-05-18 09:04:40 +01:00
migrations Add support for shared inboxes for users 2018-05-13 19:12:27 +01:00
src Use activitystreams in the Inbox trait 2018-05-18 09:04:40 +01:00
static Make the design less aggresive 2018-05-13 21:33:21 +01:00
templates Make the design less aggresive 2018-05-13 21:33:21 +01:00
.gitignore Ignore RLS files 2018-05-18 09:04:06 +01:00
.travis.yml Add Travis CI 2018-04-30 22:15:07 +01:00
Cargo.lock WIP: use the activitystreams crate 2018-05-16 19:20:44 +01:00
Cargo.toml WIP: use the activitystreams crate 2018-05-16 19:20:44 +01:00
LICENSE Add a license (AGPLv3) 2018-05-01 13:01:38 +01:00
README.md Add a link to the demo instance in the README 2018-05-12 14:35:37 +01:00
rust-toolchain Specify Rust toolchain 2018-05-01 19:37:04 +01:00

Plume Build Status

Federated blogging engine, based on ActivityPub.

Demo instance

Setup the database

You'll need Postgres.

sudo su postgres

psql

CREATE DATABASE plume;
CREATE USER plume WITH PASSWORD 'plume';
GRANT ALL PRIVILEGES ON DATABASE plume to plume;
\q

exit

Then run the migrations

diesel migrations run # Install diesel with `cargo install diesel_cli` if needed

You should repeat this operation every time the database schema has been modified. A good practice is to run it after every git pull.

Starting the app

Just use:

cargo run

You'll need Rust nightly.

Once the app started, try to visit localhost:8000.

To configure the instance (needed before you can do anything else), go on /configure.

Testing the federation

To test the federation, you'll need to setup another database (see "Setup the database"), also owned by the "plume" user, but with a different name. Then, you'll need to run the migrations for this database too.

diesel migration run --database-url postgres://plume:plume@localhost/my_other_plume_db

To run this other instance, you'll need to give two environment variables:

  • ROCKET_PORT, the port on which your app will run
  • DB_NAME, the name of the database you just created
ROCKET_PORT=3033 DB_NAME=my_other_plume_db cargo run