Você saiu de uma instância do Mastodon ou desativou sua conta, mas quer que suas postagens antigas permaneçam acessíveis publicamente. Um espelho somente leitura construído a partir do seu arquivo de exportação do Mastodon permite preservar cada toot sem precisar de uma conta ativa. Este artigo explica como gerar o arquivo dentro do Mastodon e depois publicá-lo como um site estático. Você precisará de um espaço de hospedagem que suporte arquivos HTML ou um serviço como GitHub Pages.
Um arquivo de exportação do Mastodon contém todas as suas postagens, mídias e metadados da conta em formato legível por máquina. Ao converter esse arquivo em um site estático, você cria um registro permanente e pesquisável do seu conteúdo. O processo leva cerca de 30 minutos e não requer codificação além de editar algumas linhas de configuração. O resultado é um espelho que exibe seus toots em ordem cronológica, como seu perfil original.
Este guia cobre dois métodos: usando a ferramenta oficial de arquivo do Mastodon e construindo um espelho manualmente com um gerador de site estático. Ambas as abordagens produzem um site somente leitura que respeita a formatação original das postagens e as mídias anexadas.
Principais Conclusões: Construindo um Espelho Somente Leitura do Mastodon
- Preferências > Importar e exportar > Exportar > Solicitar seu arquivo: Gera um arquivo ZIP contendo suas postagens, mídias e dados do perfil.
- Mastodon Archive Viewer (mastodon-archive-viewer): Uma ferramenta baseada em Python que converte o arquivo em um site HTML estático.
- GitHub Pages ou qualquer host estático: Publica a pasta HTML gerada para que qualquer pessoa possa ver seus toots antigos.
O Que um Arquivo de Exportação do Mastodon Contém e Por Que Você Precisa Dele
Quando você solicita a exportação dos seus dados do Mastodon, a plataforma compila um arquivo ZIP chamado archive-export-YYYY-MM-DD.zip. Dentro você encontrará três componentes principais. O arquivo outbox.json armazena cada toot que você publicou, incluindo respostas, impulsionamentos e mensagens diretas. A pasta media_attachments contém todas as imagens, vídeos e arquivos que você enviou. O arquivo actor.json contém suas informações de perfil, como nome de exibição, biografia e avatar.
Este arquivo foi projetado para portabilidade de dados. Você pode importá-lo para uma nova conta do Mastodon ou, como este artigo descreve, transformá-lo em um site independente. O arquivo não inclui listas de seguidores, solicitações de seguimento ou dados do lado do servidor, como contagens de interações. É um registro completo apenas do conteúdo que você criou.
Para construir um espelho, você precisa de uma ferramenta que entenda o formato JSON do ActivityPub usado no arquivo. O arquivo outbox.json segue a especificação W3C Activity Streams 2.0. Cada postagem é uma atividade Announce ou Create com objetos aninhados contendo o texto, timestamps e referências de mídia. Um gerador de site estático lê essa estrutura e produz páginas HTML limpas.
Passos para Gerar um Espelho Somente Leitura a Partir do Seu Arquivo de Exportação do Mastodon
Método 1: Usando o Mastodon Archive Viewer (Recomendado)
- Solicite seu arquivo do Mastodon
Faça login na sua conta do Mastodon. Vá em Preferências > Importar e exportar > Exportar. Clique no botão “Solicitar seu arquivo”. O Mastodon enviará um link de download por e-mail quando o arquivo estiver pronto, geralmente em alguns minutos. Baixe o arquivo ZIP e extraia-o para uma pasta no seu computador. - Instale o Mastodon Archive Viewer
Abra um terminal ou prompt de comando. Execute o comandopip install mastodon-archive-viewer. Isso instala o pacote Python que converte seu arquivo em HTML. Se você não tiver o Python instalado, baixe-o de python.org e instale a versão 3.8 ou posterior. - Execute a ferramenta de conversão
No terminal, navegue até a pasta onde você extraiu seu arquivo. Execute o comandomastodon-archive-viewer --input outbox.json --output mirror. A ferramenta cria uma nova pasta chamada mirror contendo um arquivo index.html e subpastas para cada postagem e arquivo de mídia. Esse processo leva de 10 a 30 segundos, dependendo do número de postagens. - Visualize o espelho localmente
Abra a pasta mirror e clique duas vezes em index.html. Seu navegador exibirá uma linha do tempo de todas as suas postagens em ordem cronológica reversa. Clique em qualquer postagem para ver o texto completo, timestamp e mídia anexada. Verifique se imagens e vídeos carregam corretamente. - Faça upload do espelho para um host web
Envie toda a pasta mirror para seu serviço de hospedagem. Se você usa GitHub Pages, crie um novo repositório, envie o conteúdo da pasta e ative o Pages nas configurações do repositório. Seu espelho estará disponível em seuusuario.github.io/nomedorepositorio.
Método 2: Espelho Manual com um Gerador de Site Estático
- Prepare seu arquivo
Igual ao Método 1, solicite e baixe seu arquivo do Mastodon. Extraia o arquivo ZIP para uma pasta chamada archive. - Instale Hugo ou Jekyll
Escolha um gerador de site estático. Hugo é mais rápido para arquivos grandes. Baixe Hugo de gohugo.io e instale. Alternativamente, instale Jekyll executandogem install jekyll bundler. - Crie um novo projeto de site
Executehugo new site mirror-siteoujekyll new mirror-site. Isso cria uma pasta com a estrutura básica para seu site. - Escreva um script de conversão
O formato do arquivo é JSON, não Markdown. Você precisa de um pequeno script para analisar outbox.json e gerar arquivos Markdown para cada postagem. Use uma linguagem como Python ou Node.js. O script deve extrair o campo object.content, converter HTML para Markdown se necessário, e salvar cada postagem como content/posts/post-id.md com front matter para data e título. - Construa e implante
Executehugooujekyll buildpara gerar o HTML estático em uma pasta public. Envie a pasta public para seu host web. Este método oferece controle total sobre o design, mas requer mais esforço técnico.
Problemas Comuns ao Construir um Espelho Somente Leitura do Mastodon
Mídias Anexadas Não Aparecem Após o Upload
O arquivo inclui arquivos de mídia na pasta media_attachments. Quando você executa o Mastodon Archive Viewer, ele copia esses arquivos para a pasta de saída. Se as imagens não aparecerem, verifique se os caminhos dos arquivos no HTML gerado correspondem à estrutura de pastas. Abra a pasta mirror e verifique se a subpasta media existe e contém os arquivos esperados. Se você enviou apenas os arquivos HTML, reenvie toda a pasta mirror incluindo o diretório media.
Postagens Aparecem Fora de Ordem ou Faltando
A ferramenta de conversão ordena as postagens pelo timestamp published em outbox.json. Se seu arquivo contiver postagens de várias contas ou tiver JSON corrompido, a ordem pode estar errada. Abra outbox.json em um editor de texto e confirme se a estrutura JSON é válida. Use um validador JSON online para verificar erros de sintaxe. Se você vir postagens faltando, o arquivo pode ter sido truncado pelo servidor Mastodon devido a limites de tamanho. Solicite um novo arquivo e tente novamente.
Mensagens Diretas Aparecem no Espelho
O Mastodon inclui mensagens diretas no arquivo de exportação. O Mastodon Archive Viewer as filtra por padrão, mas o método manual com script pode incluí-las. Para remover mensagens diretas, edite seu script de conversão para pular postagens onde object.to contenha uma URI de audiência privada. O Mastodon Archive Viewer lida com isso automaticamente, então use o Método 1 se quiser evitar expor conteúdo privado.
| Item | Mastodon Archive Viewer | Gerador de Site Estático Manual |
|---|---|---|
| Tempo de configuração | 10 minutos | 45 minutos |
| Habilidade técnica necessária | Linha de comando básica | Script e configuração de site estático |
| Manipulação de mídia | Automática | Mapeamento manual de caminhos |
| Filtragem de mensagens diretas | Integrada | Precisa ser codificada |
| Opções de design personalizado | Limitado ao tema padrão | Controle total via templates |
Seu espelho somente leitura agora está ativo e acessível a qualquer pessoa com a URL. Você pode compartilhar o link no seu novo perfil do Mastodon ou incorporá-lo em um site pessoal. Para manter o espelho atualizado com postagens futuras, gere um novo arquivo a cada mês e reconstrua o site. Para usuários avançados, adicione um arquivo sitemap.xml para ajudar os mecanismos de busca a indexar seu conteúdo. Isso garante que suas postagens antigas permaneçam encontráveis muito depois de você sair da instância original.