13 puan yazan GN⁺ 2025-10-08 | 1 yorum | WhatsApp'ta paylaş
  • Fotoğraflar, videolar, mesajlar, konum geçmişi, sosyal medya içerikleri, kişiler ve tüm kişisel verileri tek yerde toplayıp kronolojik olarak düzenleyen bir yerel zaman çizelgesi arşiv aracı
  • Google Takeout, iCloud, Facebook, Twitter/X, Strava, Instagram gibi çeşitli servislerden verileri içe aktararak bunları SQLite tabanlı bir veritabanında otomatik olarak düzenler
  • Harita·3D görünüm·birleşik konuşma görünümü·varlık tanıma gibi görsel keşif özellikleri sunar; mesajlar, fotoğraflar ve konum gibi farklı veri türleri arasındaki ilişkileri bağlayarak gösterir
  • Tüm veriler bulut yerine kişisel bilgisayarda saklanır, bu sayede dışarı sızma riski yoktur ve özgün dosyalar olduğu gibi incelenebilir
  • Kişinin hayatını görsel olarak yeniden kurgulayan; aile içinde veri paylaşımı veya dijital mirasın korunması gibi alanlara genişleyebilen bir dijital özgeçmiş kroniği projesidir

Genel bakış

  • Timelinize, bir kişinin farklı dijital izlerini tek bir birleşik zaman çizelgesinde toplayan bir yerel veri entegrasyon aracıdır
  • Fotoğraf, video, konuşmalar, sosyal medya, konum geçmişi ve kişileri toplayarak bunları zaman, mekan ve insanlar ekseninde yeniden düzenler
  • Kendi ve ailenizin günlük yaşamını ayrıntılı biçimde kaydedebilir; klasik fotoğraf kütüphaneleri veya günlük uygulamalarından daha bütünlüklü ve derin bir hikâye keşfi sunar
  • Tarayıcıda çalışır ve çevrimdışı erişilebilen bir yapıda işlev görür
  • Hâlihazırda kullandığınız uygulama ve servislerin yerine geçmez; bunun yerine, üzerinde çalıştığınız tüm veriler için kalıcı ve kişisel bir yedek oluşturur
  • Timelinize, mevcut kullanım ortamınızın arka planında çalışarak kullanıcının hayat akışını bozmayan bir arka plan arşivi görevi görür

Başlıca özellikler

  • Çeşitli veri kaynaklarını destekler
    • Google Takeout, Apple iCloud, Facebook, Instagram, Twitter/X, Strava gibi servislerin GDPR veri dışa aktarma biçimlerini doğrudan içe aktarır
    • .zip veya .tar arşivlerini açmadan otomatik algılayıp düzenler
  • Görsel keşif arayüzü
    • Zaman çizelgesi görünümü: Tüm veri öğelerini tarihe göre birleşik biçimde gösterir
    • 3D harita görünümü: Konum verilerine dayanarak hareket rotasını zaman akışı içinde görselleştirir
    • Baloncuk grafik: Günün hangi saatlerinde en çok hangi veri türlerini bıraktığınızı analiz eder
  • Varlık tabanlı veri yapısı
    • İnsanlar, hayvanlar, kurumlar gibi varlıkları merkeze alarak veri ilişkilerini düzenler
    • Aynı kişi veya kuruluşu otomatik olarak tanır; gerekirse manuel birleştirme yapılabilir
  • Konuşma birleştirme
    • Farklı platformlardaki mesajları tek bir Conversations görünümünde ilişkilendirir
    • Facebook Messenger ile SMS mesajlarını bir araya getirerek konuşma bağlamını yeniden kurar
  • Galeri birleştirme
    • Yalnızca fotoğraf kütüphanelerini değil, mesajlardaki veya sosyal ağlara yüklenen görselleri ve memeleri de birlikte gösterir
    • Çeşitli filtrelerle medya türüne veya konuya göre keşif imkânı sunar

Yapı ve çalışma mantığı

  • Veriler yerel diskte tarihe göre klasör yapısıyla düzenlenir ve metadata SQLite veritabanında saklanır
  • HTTP API ve CLI simetrik olarak sunulur; aynı komutlar hem web hem komut satırından çalıştırılabilir
  • JSON tabanlı şema ile komut argümanları ve HTTP form alanları otomatik dönüştürülür
  • Dev Container ortamı sunarak Docker tabanlı geliştirme ortamı kurulmasına olanak verir

Proje felsefesi ve vizyonu

  • Projenin temel amacı kişisel verilerin bağımsız biçimde korunması ve özgürleştirilmesidir
    • Merkezî bulut servislerinin ortadan kalkma riskine karşı verilerin doğrudan kişi tarafından yönetilmesi için tasarlanmıştır
    • Kişinin hayatını nicelleştirilmiş bir biçimde görselleştirerek dijital otobiyografi ve aile tarihi kaydına dönüşebilir
  • Uzun vadede, kişisel zaman çizelgelerini birleştirerek “tüm insanlığın zaman çizelgesini” oluşturma idealini ortaya koyar

Geliştirme ve kurulum

  • Linux/macOS/Windows için en son sürüm indirilebilir
  • VSCode + Docker ortamında Dev Container ile geliştirme yapılabilir
  • Proje AGPL lisansı ile dağıtılır; bu da ticari yeniden işleme kullanımını sınırlar

Proje geçmişi

  • 2013’te kişisel proje ‘Photobak’ olarak başladı; daha sonra Google Photos, Facebook ve Twitter yedekleme aracına dönüştü
  • Sonrasında çok kullanıcılı destek ve konum verisi entegrasyonu gibi özelliklerle evrilerek bugünkü Timelinize yapısına ulaştı
  • Yaratan kişi aynı zamanda Caddy sunucusunun geliştiricisidir ve bu projeyi kişisel veri egemenliği için uzun vadeli bir deney olarak yürütmektedir

1 yorum

 
GN⁺ 2025-10-08
Hacker News görüşleri
  • Bence harika bir hizmet, ama bunun çok daha genişleyip Nextcloud ve Zotero'nun da yerini almasını isterdim; eklediğim, açtığım veya düzenlediğim tüm belgeleri ve kitapları, yazdığım tüm notları, açtığım tarayıcı sekmelerini, kopyala/yapıştır işlemlerini, hatta tuş vuruşlarını bile kaydedip, "2 hafta önce bugün ne yapıyordum?" gibi sorulara anında cevap verebilmesi gerekir. Tüm bunlar aranabilir olmalı ve mutlaka self-hosted olmalı; bunu gözetim yazılımına dönüştürmek gibi bir amacım yok. Obsidian'da manuel bağlantı sistemi kullanan insanları görünce zaman perspektifinin daha önemli olduğunu düşünüyorum; bugün Vikipedi'de bir şey ararsam, o anda benzer bilgileri de arama veya ilişkili işler yapma olasılığım yüksek olduğundan bunun büyük bir anlamı var.

    • Microsoft'un eskiden ne üzerinde çalıştığımı Recall etmeye yardımcı olan bir ürünü vardı diye hatırlıyorum.

    • Tam adresi bulamıyorum ama tüm nesnelerin tamamen zaman tabanlı olarak var olduğu ve bunun dışındaki her şeye sadece filtrelerle erişilen bir bilişim sistemi fikrini birinin ortaya attığını hatırlıyorum; tekrar bulmak isterim.

    • Nextcloud, Zotero'nun yerini alma ve tüm notları saklama, tarayıcı sekmeleri, pano, hatta tuş girişlerini kaydetme kısmına kadar uzun vadede gerçekten çok faydalı olabilir. Yine de tarayıcı sekmeleri, tuş girişleri vb. bana fazla detaylı geliyor. O seviyeye kadar gerek yok ama verilerle kendi hayatını kaydetme ve anlama girişiminin gerekli olduğunu düşünüyorum; bu uygulama da zaten böyle bir problem bilincinden yola çıktı.

  • mholt, Caddy web sunucusunu yapan kişi olarak tanındığı için, Timelinize'a ilgim daha da arttı.

  • Son 10 yıldır tam olarak böyle bir ürüne ihtiyacım olduğu için her 2-3 dakikada bir GPS verisi kaydediyorum, bana çok ilginç geliyor.

    • GPS kaydını nasıl tuttuğunu merak ediyorum.
  • Timelinize entity-aware bir sistem, bu yüzden koordinat verisi olmasa bile varlık bazında zamansal olarak benzer bilgileri haritada gösterebiliyor. Bu da Google'ın Android/Chrome/Gmail/Maps/Timeline üzerinden benim ne kadar çok verimi birleştirebileceğini fark ettiriyor. Hava durumu verilerini gerçekte nasıl kullanmayı planladığını merak ediyorum; örneğin konum içeren varlıklarla geçmiş hava durumu verilerini ilişkilendirmeyi düşünüyor musun?

    • Evet, onu o şekilde kullanmayı planlıyorum. Hava durumu/haberler gibi kamu verilerini de ekleyip zaman çizelgesine bağlam katabiliriz.
  • Gerçekten harika bir fikir ama her veri eklediğimde Google Takeout çalıştırmam gerekiyorsa bu fazla zahmetli. Gerçek zamanlı güncelleme olsa tam bir killer app olurdu, o açıdan üzücü.
    Google Fotoğraflar veri kaynağı dokümanı

    • Bu gerçekten büyük bir engel. Chrome headless ile otomatikleştirmeyi denedim ama pratikte her 10 dakikada bir fiziksel olarak kimlik doğrulaması yapmak gerekiyor, yani otomasyon fiilen imkânsız. Genel olarak yılda bir veya iki kez Takeout yapıyorum ve Timelinize kullanmasan bile verilerini yedeklemek amacıyla bunu yapmanın iyi olduğunu düşünüyorum.
  • Bu hizmetle çok ilgileniyorum, (ve Caddy için de teşekkürler).
    Veri güncelleme/düzeltme işini nasıl ele aldığını merak ediyorum. Yarı yapılandırılmış verileri içe aktardığında, örneğin "jog" etkinliği "light run" ve "intense walk" olarak daha ayrıntılı hale geliyor ve bunun geçmiş verilere de geriye dönük uygulanması gerekiyor; bu durumda veriyi tekrar tekrar içe aktarmak gerekiyor. SSS'de yalnızca additive import'tan bahsediliyor ama veri yapısı sürekli değişen bir durumda SQL update'lerle uğraşmak istemediğim için şu anda plain text ve git ile versiyon yönetimi yapıyorum. Böylece kişi veri değişikliklerini adeta zamanda yolculuk eder gibi takip edebiliyor ve bu hoşuma gidiyor.

    • Caddy'yi sevmenize sevindim, teşekkürler.
      Gelişmiş içe aktarma seçeneklerinde öğelerin benzersizliğini ve yinelenenlerin nasıl belirleneceğini tanımlayabiliyorsunuz. Yinelenenlerin nasıl ele alınacağını da siz seçebiliyorsunuz. Varsayılan olarak yinelenenler atlanıyor ama güncelleme de yapılabiliyor ve hangi değerin öncelikli olacağını belirtebiliyorsunuz. Yine de güncellemeler UPDATE sorguları olduğu için geri alınamaz. Tamamen additive bir şemayı da denedim ama karmaşıklık, hata riski ve gezinme performansının yavaşlaması gibi nedenlerle pratikte zordu. Ama zaman çizelgesini zaman içinde nasıl dönüştüğüne göre gezebilme fikri üzerinde, taşıdığı potansiyel nedeniyle düşünmeye devam ediyorum.
  • Bu hizmet finans kayıtlarıyla (ör. banka verileri) ve yerel LLM ile birleşirse kusursuz olur gibi.
    Tam olarak nasıl kullanılacağını bilmiyorum ama mesaj geçmişi, konum bilgileri vb. üzerinden kart harcamalarını analiz edip bütçe kategorilerine ayırabilir ve çeşitli istatistikler gösterebilir.
    Tesla gibi bulut bağlantılı bir aracın varsa iş seyahati/kişisel kilometre, gider vb. şeyleri otomatik sınıflandırıp vergi amaçları için de yardımcı olabilir.
    Henüz deneyimlemediğin yerel deneyimler önerebilir, zaman yönetiminde de faydalı olabilir.

    • ledger.txt (plaintextaccounting.org), g-cal entegrasyonu ve Home Assistant'ın hepsi birbirine benzer şekilde birleşiyor.

    • Ben de bu tür şeyleri gerçekten çok sık duyuyorum ve finans verileri ile LLM entegrasyonu konusunda büyük beklentim var. Bunun gerçekten ilginç ve faydalı olacağını, ayrıca kişisel veri koruması açısından kişisel asistan gibi de işe yarayabileceğini düşünüyorum.

  • Proje harika, ama timelinize adı hoşuna gitmiyorsa hiç Latince bir isim düşündün mü diye merak ediyorum; mesela Temperi gibi adaylar olabilir.
    Ayrıca GPS, fotoğraf, metin gibi çeşitli verileri olan FindPenguins desteği de olsa güzel olurdu.

    • Latince isimler bana birkaç kez önerildi ama çoğunun yazımı zor, telaffuzu da güç, bu yüzden anlamlı bir iyileştirme gibi gelmedi. FindPenguins'in de iyi bir hizmet olduğunu düşünüyorum. Ben kullanmıyorum ama isteyen herkes veri kaynağını kendisi implemente edip ekleyebilir.
  • Son zamanlarda konum geçmişi araçlarının giderek daha kapalı hale gelmesinden bunalmıştım; bu projenin veriler üzerinde gerçek mülkiyeti geri kazanma yolunda önemli bir adım olduğunu düşünüyorum. Kesinlikle deneyeceğim.

    • Katılıyorum, ben de aynı düşünüyorum.
  • Gerçekten çok havalı görünüyor ve sanki bilinçaltımda hep istediğim bir hizmetmiş gibi.
    Birkaç fikrim var:

  • Gizlilik hassasiyeti çok yüksek olduğu için mümkünse evde Wireguard veya Tailscale gibi bir VPN'in arkasında doğrudan self-hosted çalıştırılmalı ve Ente.io gibi E2E şifreli bir uygulama olsa iyi olur.

  • İndeks ile depolama backend'i ayrılabilirse, fotoğraflar gibi verileri zaten bulunduğu yerde (Immich, Ente.io vb.) tutup çift depolamayı önlemek güzel olur. Timelinize her veri türünün yerini alamaz, bu yüzden her veri türünü en iyi yöneten uzman uygulamalarla birlikte kullanmak isterim.

  • Polarsteps seyahat geçmişi içe aktarma ve Signal yedeği desteği de olursa çok daha iyi olur.
    Signal yedek aracı GitHub

    • İyi sorular ve yorumlar için teşekkürler.
    • Evet, model evdeki kişisel bilgisayarda çalıştırmak üzerine kurulu.
    • Dışarıda barındırılırsa gerçek donanım sahibi istediği zaman fiziksel erişim sağlayabilir, bu yüzden gerçek gizliliğin zor olduğunu düşünüyorum. Gerçek zamanlı şifreli veritabanı gibi şeyleri de düşündüm ama işleme sırasında yine de şifre çözme gerektiğinden bunun mantıksal olarak imkânsız ya da aşırı zahmetli ve kırılgan olduğunu düşünüyorum. Yanılıyor olabilirim ama pratik bir alternatif var gibi görünmüyor.
    • Veri çoğaltma konusunda amaç zaten bu verileri kasıtlı olarak bu zaman çizelgesi içine kopyalamak. Böylece aynı zamanda yedekleme işlevi de görüyor ve tutarlılık, güvenilirlik, erişilebilirlik sağlıyor. PhotoStructure gibi diğer uygulamalar sadece indeksleme yapıyor, veri kopyası oluşturmuyor. Timelinize'ın bu yaklaşımı dayatması zor olabilir.
    • Polarsteps/Signal dâhil çeşitli veri kaynaklarını desteklemek istiyorum. Signal verisinin formatı sık değişiyor ve şifreli olduğu için güvenilir biçimde içe aktarmak zor oldu. Yine de herkes yeni bir kaynak ekleyebilir ve ileride bir import API de hazırlamayı planlıyorum. Böylece harici script'ler veya uygulamalar Timelinize'a veri push edebilecek.
    • Nihayetinde Timelinize'ın amacı verileri fiilen güvence altına almak olduğu için belli ölçüde veri çoğaltmaya katlanmaya değer olduğunu düşünüyorum. Depolama alanı da giderek ucuzluyor; pahalı olsa bile buna değer.