No description
Find a file
Benjamin Neff 7e2815fabc create fetch entity callback
and url_to callback
2016-03-15 01:30:08 +01:00
app/controllers/diaspora_federation add slap/magic-env switch to the receive-controller 2016-02-14 19:00:43 +01:00
bin bump spring 2015-12-27 22:19:58 +01:00
config enable routes for receive 2015-12-18 00:14:03 +01:00
lib create fetch entity callback 2016-03-15 01:30:08 +01:00
spec create abstract post type with shared attributes 2016-03-11 03:44:09 +01:00
test/dummy create fetch entity callback 2016-03-15 01:30:08 +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 Enable persistance file for rspec 2015-12-14 11:00:28 +03:00
.rspec WIP: move test dependencies to gemspec 2015-06-24 03:09:14 +02:00
.rubocop.yml bump rubocop and pronto-rubocop 2016-01-19 01:32:22 +01:00
.ruby-gemset initial commit 2015-06-10 03:13:44 +02:00
.ruby-version initial commit 2015-06-10 03:13:44 +02:00
.travis.yml add develop branch to travis 2015-11-30 01:07:32 +01:00
diaspora_federation-rails.gemspec fix some rubocop warnings 2015-09-21 00:50:09 +02:00
diaspora_federation-test.gemspec fix factory_girl version 2015-12-31 12:58:32 +01:00
diaspora_federation.gemspec bump nokogiri 2016-01-23 00:15:00 +01:00
Gemfile bump rspec-core 2016-02-23 01:57:35 +01:00
Gemfile.lock bump codeclimate-test-reporter 2016-03-01 02:40:04 +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 Update readme 2015-11-30 01:17:35 +01: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

Documentation | Bugtracker

Library

The diaspora_federation gem provides the functionality for de-/serialization and de-/encryption of Entities in the protocols used for communication among the various installations of Diaspora*

Rails Engine

The diaspora_federation-rails gem 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

Development

!!! This gem is currently under heavy development, so every release can contain breaking changes !!!

If you want to help, please contact me, help is welcome.

After the first stable release, this repo will be moved to the diaspora organization.

Diaspora

A privacy-aware, distributed, open source social network

Links: Project site | Wiki

License

This gem is published under the terms of the "GNU Affero General Public License". See the LICENSE file for the exact wording.