Hi JK,
I have done a little research on social network frameworks for ySchool social experience module.
I think Apache Shindig can be best suited to develop ySchool social experience. Followings are the findings
about Apache Shindig, I could collect.
Apache Shindig
-----------------------
Apache Shindig is open social app platform to hosts social apps (Java Script Gadgets) which
can be integrated with any website/web page.Shindig makes hosting social apps in new sites easy.
Shindig platform provides following modules
Gadget Container JavaScript:
Core JavaScript foundation for general gadget functionality. This JavaScript manages
security, communication, UI layout, and feature extensions, such as the OpenSocial API.
Gadget Rendering Server:
Used to render the gadget XML into JavaScript and HTML for the container to expose via the container JavaScript.
OpenSocial Container JavaScript:
JavaScript environment that sits on top of the Gadget Container JavaScript and
provides OpenSocial specific functionality (profiles, friends, activities, datastore).
OpenSocial Data Server: (available in both Java and PHP, but Java is the most actively developed)
An implementation of the server interface to container-specific information, including the OpenSocial REST APIs,
with clear extension points so others can connect it to their own back-ends.
The server will connect our own social network's back-end using the OpenSocial Service Provider Interface (SPI) implentation,
which has to implement
- Retrieving people information
- Storing and retrieving activities
- Storing and retrieving persistent data
- Sending messages
Architecutre:
Pros
1. Easy to start with open social specification REST API.
2. Proven security model (authentication,authorization ect).
3. Gadgets are easy to integrate social features to the web pages, than writing from scratch.
4. We can partially implement OpenSocial Service Provider Interface.
. more ???
Cons
1. Fairly complex architecture to understand.
2. We have to deploy a separate WAR file to run the Shindig server.
3. Lacks of documentation and examples.
4. Developing an custom gadget requires more work? (Shindig gadgets are based Google Gadgets)
. more ???
References
Source code and examples
can we proceed with proceed with Apache Shindig? please advise.
thanks and regards.
-Nirojan