Social Stream: core for building social network websites

Social Stream is an engine for Ruby on Rails. It provides a robust and flexible core with social networking features and activity streams for building websites.

Social networking

Social networks are a new paradigm on web application design. Social networking platforms stand among the most popular websites, while many content oriented applications are supporting social networking features in order to improve engagement, enhance user awareness and stimulate communities around the website.

Social Stream is based on social network analysis (SNA) concepts and methods, including social entities (actors), ties and relations. Social Stream is so flexible that you can define custom actors (groups, organizations, institutions, social events) and relationships (friends, collegues, members, administrators, contributors, attendants, speakers).

It also provides a new tie-based access control model, which grants rights at the relation level, allowing you to share activities with friends, administrators, members or everybody.

Activity Streams

Activity Streams is a format for syndicating social activities around the web. It has already been adopted by some of the major social networking platforms.

Social Stream provides a database schema based on the Activity Streams specification, leading your application towards a well-known compatible data model design. It is extensible so you can add your own activities easily.

Installation

Add to your Gemfile:

gem 'social_stream'

and run:

bundle

Then:

rails generate social_stream:install

Do not forget to migrate your database

rake db:migrate

Social Stream modules

Social Stream is divided in modules. Developers can customize their social network with the functionalities they need for each case.

Current Social Stream distribution includes:

Documentation

Social Stream documentation is available at rdoc.info

Discussion

We are reaching beta phase of development. Feel free to add an issue or send a message at github.