- Reúne todos os dados pessoais — como fotos, vídeos, mensagens, histórico de localização, conteúdo de redes sociais e contatos — e os organiza em ordem cronológica em uma ferramenta local de arquivamento em linha do tempo
- Importa dados de vários serviços, como Google Takeout, iCloud, Facebook, Twitter/X, Strava e Instagram, e os organiza automaticamente em um banco de dados baseado em SQLite
- Oferece recursos de exploração visual como mapa, visualização 3D, visualização integrada de conversas e reconhecimento de entidades, mostrando também as relações entre diferentes dados, como mensagens, fotos e localizações
- Todos os dados são armazenados no PC pessoal, e não na nuvem, eliminando o risco de vazamento externo, e permitindo explorar os arquivos originais como estão
- É um projeto de autobiografia digital que reconstrói visualmente a vida da pessoa e pode se expandir para compartilhamento de dados entre familiares ou preservação de legado digital
Visão geral
- Timelinize é uma ferramenta local de integração de dados que reúne diferentes rastros digitais pessoais em uma única linha do tempo integrada
- Coleta fotos, vídeos, conversas, redes sociais, histórico de localização e contatos, reorganizando tudo com foco em tempo, espaço e pessoas
- Permite registrar com riqueza de detalhes o cotidiano da pessoa e da família, possibilitando uma exploração de histórias mais completa e profunda do que bibliotecas de fotos ou apps de diário tradicionais
- Funciona no navegador e permanece acessível mesmo offline
- Não substitui os diversos apps e serviços já usados, mas cria um backup permanente e pessoal de todos os dados com que o usuário trabalha
- O Timelinize opera “nos bastidores” do ambiente já existente e cumpre o papel de um arquivo em segundo plano que não interfere na vida do usuário
Principais recursos
- Suporte a diversas fontes de dados
- Importa diretamente formatos de exportação de dados GDPR de Google Takeout, Apple iCloud, Facebook, Instagram, Twitter/X, Strava e outros
- Reconhece e organiza automaticamente arquivos
.zip ou .tar sem necessidade de descompactar
- Interface de exploração visual
- Visualização de linha do tempo: exibe de forma integrada todos os itens de dados por data
- Visualização de mapa 3D: com base nos dados de localização, mostra o trajeto ao longo do tempo
- Gráfico de bolhas: analisa quais tipos de dados foram mais registrados em cada horário do dia
- Estrutura de dados baseada em entidades
- Organiza as relações dos dados em torno de entidades como pessoas, animais e instituições
- Reconhece automaticamente a mesma pessoa ou organização e permite mesclagem manual quando necessário
- Integração de conversas
- Conecta mensagens de plataformas diferentes em uma única visualização de Conversations
- Junta Facebook Messenger e SMS em um só fluxo para restaurar o contexto da conversa
- Integração de galeria
- Exibe, além da biblioteca de fotos, imagens enviadas em mensagens ou redes sociais, memes e mais
- Oferece vários filtros para explorar por mídia ou tema
Estrutura e funcionamento
- Os dados são organizados no disco local em uma estrutura de pastas por data, enquanto os metadados são armazenados em um banco SQLite
- Oferece HTTP API e CLI de forma simétrica, permitindo executar os mesmos comandos tanto na web quanto na linha de comando
- Usa um esquema baseado em JSON para converter automaticamente argumentos de comando e campos de formulário HTTP
- Disponibiliza ambiente Dev Container para configurar um ambiente de desenvolvimento baseado em Docker
Filosofia e visão do projeto
- O objetivo central do projeto é a preservação autônoma e a libertação dos dados pessoais
- Foi projetado para que a própria pessoa gerencie seus dados diretamente, prevenindo o risco de desaparecimento de serviços de nuvem centralizados
- Ao visualizar a vida em formato quantificado, pode evoluir para uma autobiografia digital ou um registro histórico familiar
- No longo prazo, apresenta o ideal de mesclar linhas do tempo individuais para compor uma “linha do tempo de toda a humanidade”
Desenvolvimento e instalação
- É possível baixar a release mais recente para Linux, macOS e Windows
- É possível desenvolver com Dev Container em um ambiente VSCode + Docker
- O projeto é distribuído sob a licença AGPL, restringindo a reutilização comercial
Histórico do projeto
- Começou em 2013 como o projeto pessoal “Photobak” e depois se expandiu para uma ferramenta de backup de Google Photos, Facebook e Twitter
- Mais tarde evoluiu com suporte multiusuário e integração de dados de localização, chegando ao formato atual do Timelinize
- O criador também é desenvolvedor do servidor Caddy e conduz este projeto como um experimento de longo prazo em prol da soberania dos dados pessoais
1 comentários
Comentários no Hacker News
Acho um serviço excelente, mas queria que isso fosse muito mais longe e chegasse a substituir até o Nextcloud e o Zotero, registrando todos os documentos e livros que eu adiciono, abro ou modifico, todas as notas que escrevo, as abas do navegador que abro, copiar/colar e até as teclas digitadas, para responder na hora perguntas como "o que eu estava fazendo neste dia, duas semanas atrás?"; tudo isso precisaria ser pesquisável e obrigatoriamente self-hosted, e não com o objetivo de virar software de vigilância; quando vejo pessoas usando sistemas de links manuais no Obsidian, fico pensando que a perspectiva do tempo é ainda mais importante; se eu pesquiso algo na Wikipédia hoje, há uma boa chance de eu também encontrar informações parecidas ou fazer coisas relacionadas nesse mesmo momento, e isso é muito significativo
Lembro que a Microsoft tinha um produto para ajudar a fazer recall do que eu estava fazendo antes
Não consegui achar o link exato, mas lembro de alguém ter proposto a ideia de um sistema computacional em que todos os objetos existam puramente com base no tempo, e todo o resto seja acessado só por filtros; queria encontrar isso de novo
Até a parte de substituir Nextcloud e Zotero e armazenar todas as notas, abas do navegador, área de transferência e até teclas digitadas parece realmente útil no longo prazo, mas registrar abas do navegador, teclas digitadas etc. me parece detalhado demais; não acho que precise chegar a esse ponto, mas acredito que vale a pena tentar registrar e compreender a própria vida com dados, e este app também partiu dessa mesma preocupação
mholt é conhecido por ter criado o servidor web Caddy, então isso aumenta ainda mais meu interesse no Timelinize
Há 10 anos eu precisava exatamente de um produto assim, então venho registrando dados de GPS a cada 2 ou 3 minutos; acho isso extremamente interessante
O Timelinize é um sistema entity-aware, então mesmo sem dados de coordenadas ele consegue mostrar no mapa informações temporalmente semelhantes por entidade; isso me faz perceber o quanto o Google pode combinar meus dados com base em Android/Chrome/Gmail/Maps/Timeline; fiquei curioso sobre como exatamente os dados meteorológicos serão usados, por exemplo, se estão pensando em conectar entidades com localização ao histórico de clima
Acho a ideia muito legal, mas se eu tiver que executar o Google Takeout toda vez que adicionar dados, fica trabalhoso demais; seria um killer app de verdade se tivesse atualização em tempo real, então é uma pena
Documentação da fonte de dados do Google Fotos
Tenho muito interesse neste serviço, (e também agradeço pelo Caddy)
Queria saber como vocês lidam com atualização/correção de dados; quando se importa dados semiestruturados e, por exemplo, um evento de "jog" passa a ser refinado em "light run" e "intense walk", com aplicação retroativa aos dados antigos, você precisa reimportar dados duplicados; no FAQ só fala de importação aditiva, mas como a estrutura dos dados muda o tempo todo, não quero sofrer com atualizações SQL e por isso hoje faço controle de versão com texto puro e git; assim a pessoa consegue acompanhar as mudanças dos dados como se estivesse viajando no tempo
nas opções avançadas de importação você pode definir a unicidade dos itens e como duplicatas são identificadas; também pode escolher diretamente como tratar duplicatas; por padrão, duplicatas são ignoradas, mas também é possível atualizar, e você pode definir qual valor terá prioridade; no entanto, atualizações são consultas
UPDATE, então não podem ser desfeitas; também experimentei um esquema puramente aditivo, mas na prática era difícil por causa da complexidade, do risco de erros e do desempenho mais lento na navegação; ainda assim, continuo pensando na possibilidade, porque poder percorrer a timeline e ver as transformações ao longo do tempo tem muito potencialEste serviço seria perfeito se fosse combinado com registros financeiros (por exemplo, dados bancários) e um LLM local,
Não sei exatamente como isso seria usado, mas com base no histórico de mensagens, localização etc., daria para analisar gastos no cartão, classificá-los em orçamento e mostrar várias estatísticas,
Se você tiver um carro conectado à nuvem como um Tesla, também poderia classificar automaticamente deslocamentos de trabalho/pessoais, despesas etc. para fins fiscais,
Também parece útil para recomendação de experiências locais que você ainda não fez e para gestão do tempo
ledger.txt(plaintextaccounting.org), integração com g-cal e Home Assistant estão todos se reunindo de forma parecidaEu também ouço esse tipo de coisa com muita frequência e tenho grandes expectativas em relação à integração de informações financeiras e LLMs; acho isso realmente interessante e útil, e também algo viável como assistente pessoal do ponto de vista da proteção de dados pessoais
O projeto é legal; se você não gosta do nome timelinize, já pensou em um nome em latim, por exemplo algo como Temperi
E também seria ótimo ter suporte ao FindPenguins, que tem vários tipos de dados como GPS, fotos e texto
Ultimamente tenho ficado frustrado com o fato de que as ferramentas de histórico de localização estão cada vez mais fechadas, e acho que este projeto é um avanço importante para recuperar a verdadeira propriedade sobre os dados; com certeza vou experimentar
Parece realmente muito legal e o tipo de serviço que eu queria sem perceber,
Tenho algumas ideias
Como a sensibilidade de privacidade é alta, o ideal seria fazer self-hosting em casa, atrás de uma VPN como Wireguard ou Tailscale, e seria ótimo se fosse um aplicativo com criptografia E2E como o Ente.io
Seria bom separar índice e backend de armazenamento, para que fotos etc. possam ficar onde já estão (Immich, Ente.io etc.) e evitar armazenamento duplicado; como o Timelinize não vai substituir todos os tipos de dados, eu gostaria de usá-lo em paralelo com apps especializados que tratam melhor cada tipo de dado
Também seria muito melhor se houvesse suporte para importar histórico de viagens do Polarsteps e backup do Signal
GitHub da ferramenta de backup do Signal