Retornei as atividades com o projeto na semana passada, dia 2. Hoje, dia 8, posso informar que o projeto se encontra no seguinte estado:
-
conversão de livros de PDF para EPUB: por causa de um crash* no nosso NAS, este processo foi paralisado ainda no seu início. Menos de 4.000 obras foram convertidas. Estamos aguardando uma “folga” para tentarmos recuperar o disco que entrou em modo degradado (ou então substitui-lo);
-
desenvolvimento do backend: os primeiros dias deste período de forte dedicação ao projeto foram dedicados a esta tarefa. No momento as funcionalidades de Biblioteca, Favoritos e Meus Arquivos já estão praticamente 100% operacionais no nosso backend. Ah, optamos pela dupla CouchDB (servidor**)/PouchDB (cliente) para viabilizar a futura sincronização de progresso de leitura entre diferentes clientes vinculados a uma mesma conta (exemplo: usuário lê no smartphone e continua no tablet);
-
melhoria da interface do app móvel: muitas melhorias foram feitas na interface. O destaque vai para o menu lateral e para a remoção de diversos bugs chatos na interação. Também foi implementada a função de busca textual sensível ao contexto em quase todas as telas do app.
Os próximos passos são:
-
consertar problema do NAS o mais rápido possível;
-
após o NAS consertado, prosseguir com processo de conversão de livros, que está sendo realizado com o apoio da ferramenta Calibre;
-
também após o NAS consertado, implementar a importação completa do backend, que hoje conta apenas com cerca de 4.000 obras em seu banco de dados;
-
implementar mecanismo de armazenamento (backend) e download de obras (app cliente). Para o download será necessário provavelmente usar o plugin ngCordova Archive ou similar;
-
implementar mecanismo de conta/login. A ideia principal do mecanismo de conta/login é possibilitar o armazenamento de perfil de usuário no nosso backend e mantê-lo automaticamente sincronizado entre diferentes dispositivos. Desta forma será possível a um usuário continuar a leitura entre diferentes clientes vinculados a uma mesma conta, conforme citado anteriormente ao explicarmos a opção pelo PouchDB;
-
implementar, se possível, integração com redes sociais, tais como Facebook, Twitter e Google+. Neste caso, implementar também mecanismo de compartilhamento de obras (sugestão por post) e, talvez, até envio de mensagens;
-
implementar, se possível, mecanismo de avaliação (rating) de obras em tela Meus Dados. Desta forma usuário poderá atribuir nota a obras consumidas;
-
implementar ou remover tela Recentes, que mostrará as últimas obras recentemente abertas para reprodução;
-
projetar e implementar tela Configurações.
-
Isto também não estava no script. É o segundo crash em seis meses no nosso NAS.
** Tecnicamente estamos usando o serviço Cloudant, da IBM. Trata-se de um fork bastante compatível com o CouchDB mas com recursos adicionais interessantes, tais como busca textual (com auxílio do Lucene).