No description
Find a file
2016-11-16 23:44:08 +01:00
app/controllers/diaspora_federation use head method instead of :nothing option 2016-08-30 01:18:12 +02:00
bin bump spring 2015-12-27 22:19:58 +01:00
config add initializer to filter xml parameter from logging 2016-06-21 05:50:09 +02:00
lib Activate ruby 2.1 with rails 4.2 on travis again 2016-11-08 00:25:20 +01:00
spec bump codeclimate-test-reporter 2016-11-10 04:07:59 +01:00
test bump codeclimate-test-reporter 2016-11-10 04:07:59 +01:00
.codeclimate.yml add .codeclimate.yml 2015-06-25 02:23:59 +02:00
.editorconfig add .editorconfig 2015-06-19 01:05:06 +02:00
.envrc add .envrc for direnv 2015-06-23 01:09:56 +02:00
.gitignore bump rails 2016-08-12 12:49:22 +02:00
.rspec WIP: move test dependencies to gemspec 2015-06-24 03:09:14 +02:00
.rubocop.yml bump rubocop 2016-11-10 04:07:59 +01:00
.ruby-gemset initial commit 2015-06-10 03:13:44 +02:00
.ruby-version use ruby 2.3 by default 2016-08-19 03:08:47 +02:00
.travis.yml Activate ruby 2.1 with rails 4.2 on travis again 2016-11-08 00:25:20 +01:00
.yardopts add changelog to gems and documentation 2016-07-14 20:02:46 +02:00
Changelog.md update changelog for 0.1.5 2016-10-24 00:43:20 +02:00
CONTRIBUTING.md Overhaul README, add contributing notes. 2016-06-26 03:37:48 +02:00
diaspora_federation-rails.gemspec add rails 5 support 2016-11-04 23:55:12 +01:00
diaspora_federation-test.gemspec fix license 2016-08-22 00:11:24 +02:00
diaspora_federation.gemspec Allow upgrade to faraday 0.10 2016-11-16 23:44:08 +01:00
Gemfile bump codeclimate-test-reporter 2016-11-10 04:07:59 +01:00
Gemfile.lock Allow upgrade to faraday 0.10 2016-11-16 23:44:08 +01:00
Guardfile add guard-rubocop 2016-01-16 00:31:02 +01:00
LICENSE use host-meta xml generator from raven24's gem 2015-06-17 04:45:37 +02:00
Rakefile split rails part into separate gem 2015-07-04 20:01:37 +02:00
README.md add link to protocol documentation 2016-07-14 21:00:29 +02:00

diaspora* federation library

A library that provides functionalities needed for the diaspora* federation protocol

master: Build Status master | develop: Build Status develop

Code Climate Test Coverage Dependency Status Inline docs Gem Version

Gem Documentation | Protocol Documentation | Bugtracker

This repository contains two gems:

  • diaspora_federation provides the functionality for de-/serialization and de-/encryption of Entities in the protocols used for communication among the various installations of diaspora*.
  • diaspora_federation-rails is a rails engine that adds the diaspora* federation protocol to a rails app.

Usage

Add the gem to your Gemfile:

gem "diaspora_federation-rails"

Mount the routes in your config/routes.rb:

mount DiasporaFederation::Engine => "/"

Configure the engine in config/initializers/diaspora_federation.rb:

DiasporaFederation.configure do |config|
  # the pod url
  config.server_uri = AppConfig.pod_uri

  config.define_callbacks do
    on :fetch_person_for_webfinger do |diaspora_id|
      person = Person.find_local_by_diaspora_id(diaspora_id)
      if person
        DiasporaFederation::Discovery::WebFinger.new(
          # ...
        )
      end
    end

    on :fetch_person_for_hcard do |guid|
      # ...
    end
  end
end

Contributing

See our contribution guide for more information on how to contribute to the diaspora* federation library.

License

GNU Affero General Public License.