Aprenda como integrar uma cabine fotográfica ao IPFS e tornar sua selfie interplanetária com o web3.storage.
Durante o Web Summit 2022, os eventos e a equipe criativa da Filecoin montaram um incrível estande de exibição na convenção que atraiu mais de 3.500 visitantes que desejam aprender mais sobre Web3, o Sistema de Arquivos InterPlanetários (IPFS) e as soluções de armazenamento distribuído da rede Filecoin.
A Filecoin oferece uma ampla gama de soluções para armazenar e manter arquivos na Web3 via protocolo IPFS. Um dos mais populares e fáceis de usar é o web3.Storage, uma solução “one API call to IPFS and Filecoin” para desenvolvedores.
O IPFS é um protocolo da web que permite compartilhar arquivos em uma rede peer-to-peer e compartilhar dados em uma rede de computadores distribuídos. A Filecoin criou um protocolo de código aberto que permite que um mercado de armazenamento persista arquivos no IPFS por muito tempo e com baixo custo. Esta solução resolve o problema de armazenamento em Web3 e atualiza a internet como a conhecemos para lidar com desafios como a comunicação interplanetária.
A comunicação interplanetária tem que incluir selfies! Aprenda a usar um aplicativo node.js leve para fazer um software de cabine de fotos chamado Sparkbooth para se conectar ao web3.storage e fazer upload de sua selfie para o IPFS.
As principais partes das cabines de fotos são: uma câmera digital, algumas luzes, um computador com tela sensível ao toque, algum software que controla a câmera para tirar fotos e a capacidade de enviá-las para a rede IPFS e Filecoin.
Tela sensível ao toque recebe comandos do usuário para tirar uma foto
O software Photo Booth (chamado Sparkbooth) falará com a câmera para agir
O Sparkbooth armazena a foto localmente no computador
O Sparkbooth pergunta ao usuário se ele deseja enviar para um servidor (via web3.storage)
Sparkbooth envia a foto, nome de usuário, senha e mensagem de sucesso em uma chamada de API para *
O aplicativo fil-photobooth-uploader irá:
validar o nome de usuário e senha
mudar o formato da foto para o que
recupera o token/chave da API do sistema e envia para __ web3. __Armazenar
w__ eb3.storage __ envia a foto para a rede IPFS e faz backup no Filecoin
w__ eb3.storage __ retornará o IPFS Content ID (CID) de volta ao
fil-photo-booth-uploader retorna uma mensagem de sucesso para o Sparkbooth 7
Sparkbooth recebe uma mensagem de sucesso: “Sua foto é enviada para IPFS via
Sparkbooth exibe o código QR gerado na tela
Um exemplo da url IPFS CID:
https://bafybeiei7zadrztflc6krunhvqr3umzre7xjxfzvmyjs2ob2w7yykq63ea.ipfs.w3s.link/20221104172648.jpg |
---|
Para saber mais sobre IPFS e CIDs, visite
Existem algumas coisas que você pode precisar para executar este tutorial:
Para que o Sparkbooth 7 e o web3.storage conversem bem, precisaremos de uma ajudinha para traduzir seus idiomas. O aplicativo nodejs nos ajudará a conseguir isso. Ele precisará ser hospedado em um servidor e estamos usando o Heroku para isso (se você conhece uma maneira nativa do Web3 de hospedá-lo, envie-me um DM. Eu adoraria tentar).
A etapa final é preparar o software no laptop da cabine de fotos para conversar com nosso aplicativo nodejs personalizado para concluir o fluxo de configuração. \
Este aplicativo foi criado em 2022 e usa as APIs web3.storage existentes. No momento em que este livro foi escrito, havia novas APIs w3up beta disponíveis em web3.storage, que
O aplicativo não é perfeito! Existem algumas áreas que podem ser melhoradas:
Mesmo que isso seja apenas um truque para mostrar o terreno, a segurança do aplicativo nodejs não é ideal. A validação das senhas e do nome de usuário na lógica do aplicativo não é preferida. Acredito que devemos colocar o aplicativo atrás de um firewall ou gateway de API que valide a autorização no cabeçalho antes de passar a chamada para nosso aplicativo.
O Sparkbooth 7 é ótimo, mas a interface do usuário parece bastante limitada. Seria bom se pudéssemos personalizar isso um pouco mais. Talvez um software de cabine fotográfica de código aberto possa nos ajudar a conseguir isso?
Potencialmente, poderíamos usar um computador separado para mostrar as fotos mais recentes aos visitantes. Eles podem selecionar a foto que gostariam de enviar por e-mail para si mesmos, exibir o código QR novamente ou compartilhá-lo nas mídias sociais. Isso envolverá a construção de um front-end para o fil-photo-booth-uploader, que pode ser um projeto muito interessante para um desenvolvedor front-end.
Durante os três dias do Web Summit, a cabine de fotos da Filecoin teve um tempo de atividade de 99% e uma interrupção de 1% devido a problemas de conectividade com a Internet na convenção. No total, a cabine de fotos publicou 934 fotos na Rede Filecoin. Isso é quase mil selfies que estão prontas para serem interplanetárias, tudo graças ao serviço muito prático de web3.storage!
A cabine de fotos também é famosa. No terceiro dia, um repórter da CNN também entrevistou o estande, (sim, o estande está ficando famoso… não eu).
Repórter da CNN entrevistando o Filecoin Photo Booth no Web Summit, Lisboa, Portugal
Sinta-se à vontade para usar este guia para construir sua própria cabine fotográfica interplanetária para seus eventos, reuniões, encontros, festas ou apenas por diversão.
A rede Filecoin agora tem 16EiB de capacidade de armazenamento e mais de 300PiB de dados foram armazenados nela. Há muitas maneiras de contribuir ou usar este projeto. Saiba mais sobre como se envolver