O Shindig é um container OpenSocial, que serve como base para prover aplicações seguindo a especificação OpenSocial, possibilitando renderizar gadgets e cuidar de requisições RPC e REST.
Utilizando o Shindig, fica fácil testar seus gadgets e aplicações OpenSocial localmente, sem ter que por exemplo utilizar o Sandbox do Orkut, que obriga a colocar seus gadgets online.
Atualmente é disponibilizado implementações em Java e PHP.
A instalação é muito simples e foi testada com sucesso no Jetty e Tomcat (Java) e no Apache (PHP).
Para a instalação no Apache, temos os seguintes pré-requisitos:
- Apache com mod_rewrite habilitado
- PHP 5.2.x com as extensões json, simplexml e mcrypt habilitadas
Para baixar o Shindig, o melhor caminho é utilizar o Subversion e baixar a versão mais recente do container.
Crie um diretório para a instalação. Ex:
mkdir /var/www/html/shindig
Navegue até o diretório criado:
cd /var/www/html/shindig
E faça o checkout:
svn co http://svn.apache.org/repos/asf/incubator/shindig/trunk/ .
Se não quiser usar o SVN, também é possível baixar as últimas versões aqui: http://incubator.apache.org/shindig/download/index.html
O próximo passo é criar um Virtual Host no Apache para nossa instalação do Shindig. Geralmente estes dados são colocados no arquivo /instalacao_apache/conf/extra/httpd-vhosts.conf
Segue exemplo de configuração abaixo:
<VirtualHost *:80>
ServerName shindig
DocumentRoot /opt/Sites/shindig/php
DirectoryIndex index.php index.html default.shtml
AccessFileName .htaccess
<Files *>
Options +Includes
</Files>
<Directory *>
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Após a criação do virtual host será necessário reiniciar o Apache.
Pronto! Agora é só acessar http://shindig/gadgets/ifr?url=ENDEREÇO_DA_SUA_APLICACAO
Como exemplo, você pode acessar http://shindig/gadgets/ifr?url=http://www.fabiotc.com.br/OpenSocial/APOD/apod.php
Este gadget é um exemplo que foi criado na edição de novembro de 2008 da revista php|architect. Esta aplicação acessa o site http://apod.nasa.gov/apod/index.html e utilizando o Tidy e expressões regulares extrai a imagem (que é a imagem astronômica do dia da NASA) e seu conteúdo.
No próximo post, estarei falando sobre o Partuza, que é uma implementação completa (e Open Source) de um site completo utilizando o Shindig com todas as suas funcionalidades.
Até lá!