De må gi deg dataene dine. Ingen sa at de måtte være til å forstå.

Be Apple, Google, Meta eller Snapchat om alt de har om deg, og det dukker opp noen zip-filer. Inni: nummererte mapper, maskinskrevet JSON, meldingene dine spredd over flere tjenester, år med posisjoner du ikke visste ble lagret, og det samme bildet fire ganger med datoene fjernet.

Muletto åpner hele bunken i denne fanen og gir deg tilbake én ting du kan lese, søke i og beholde.

Åpne en eksport Jeg må be om en Ingen konto. Ingenting lastes opp.
  • Én tidslinjeHvert arkiv på én tråd, i den rekkefølgen det skjedde, i stedet for fire mapper som verken deler filnavn eller datoer.
  • Meldingene dine, samletSamtaler som gikk over Snapchat, Instagram og Messenger leses som én samtale, med personen, ikke plattformen.
  • Overalt du har værtPosisjonsloggene hver tjeneste førte, tegnet opp på din egen maskin. Kystlinjen følger med siden, så det å tegne bevegelsene dine gir dem ikke bort til et kartselskap på kjøpet.
  • Bilder med datoene tilbakeDuplikater på tvers av tjenester fjernet, ekte datoer og steder skrevet inn i filene, klare for Bilder, Immich, en NAS eller en disk i en skuff.
  • Filer du eierAlt skrives ut som vanlige mapper og vanlige filer. Ingenting er avhengig av at dette nettstedet fortsetter å finnes - eksporter én gang gjennom Muletto, behold de ordnede filene for alltid, og etterlat deg ingen spor.
  • Gratis, og det blir det værendeAlt over kjører på din egen maskin og koster ingenting. Sparte det deg for en ettermiddag, kan du spandere en kaffe - helt frivillig, og ingenting holdes tilbake om du lar være.

Å lese eksporten er den enkle halvdelen

Meldinger og oppføringer skal bare gjøres leselige. Bildene er en annen jobb. Det er (som regel) titusenvis av dem, spredd over hvert eneste arkiv, de fleste uten datoene sine og mange av dem lagret mer enn én gang.

Duplikater funnet på tvers av tjenester

Ethvert bildeprogram ser to kopier i samme mappe. De som fyller opp disken din ligger i fire forskjellige arkiver under fire filnavn med fire forskjellige datoer, og ingenting annet finner dem, fordi ingenting annet åpner mer enn én eksport om gangen.

Muletto sammenligner innholdet, så det samme bildet fra iCloud, Google, Snapchat og en WhatsApp-lagring er ett bilde. Den fanger opp de nesten like også: serien, beskjæringen, skjermbildet av skjermbildet.

Arbeidet havner i filene, ikke i en konto

Datoer og steder skrives inn i selve bildene, i feltene alle bildeprogrammer allerede leser. Flytt biblioteket til Apple Bilder, til Immich, til en NAS eller til en disk i en skuff, og det er fortsatt sortert og søkbart.

Ingenting blir liggende her. Det finnes ingen konto å miste, og intet bibliotek som slutter å virke hvis dette nettstedet gjør det.

Resten er detaljer

Verdt å lese hvis du vil vite nøyaktig hva som skjer med en fil før du slipper dette løs på ditt eget arkiv. Samme produkt, fortalt ordentlig.

Hva som skjer, i rekkefølge, fra du spør til du beholder

Én gjennomgang av hele greia, fra du ber en tjeneste om dataene dine til du rydder dem bort igjen. Hvert steg sier hva som skjer og hvorfor det gjøres slik.

  1. Du ber dem om den

    Hver tjeneste plikter å utlevere det de har om deg, og hver eneste av dem har gjemt knappen et nytt sted. Veiledningene går gjennom hver forespørsel, skjermbilde for skjermbilde, og sier hva ventetiden pleier å være.

    Muletto er ikke involvert. Du spør dem direkte, med din egen konto, og arkivet kommer til din maskin.

  2. Du åpner den her

    Zip-filas innholdsfortegnelse leses fra slutten av fila, og oppføringene pakkes ut én om gangen med DecompressionStream over File.slice(). Arkivet holdes aldri samlet, så en Takeout på 50 GB oppfører seg som en liten en. Arkiver over 2 GB kommer i et annet format igjen, og det leses også her.

    Ingenting sendes noe sted, og siden leveres med en Content-Security-Policy der connect-src lar nettleseren nekte på våre vegne. Skru av wifi, og hvert eneste steg under fungerer fortsatt.

  3. Den leses inn i ett bibliotek

    Bilder, meldinger, posisjonshistorikk, søk, sett-historikk, betalinger og kontotabeller, ut av hvilken form hver tjeneste nå valgte - Snapchats JSON, Metas filer per samtale, Googles mapper per produkt, Apples og Samsungs CSV-er - slått sammen på én tidslinje etter tidsstemplene de allerede bærer.

    To tjenester som loggførte samme ettermiddag havner ved siden av hverandre, og det ser du ikke så lenge de ligger i hver sin mappe.

  4. Små kopier lages, én gang

    Hvert bilde krympes til en kopi på 320 piksler og skrives til nettleserens eget lager, på disk. Videoer gir fra seg første bilderute på samme måte.

    En vegg av tre tusen bilder kan ikke åpne originalene hver gang du blar - det er megabyte per stykk. Kopiene lages én gang, i bakgrunnstråder så siden holder seg i live, og de er der fortsatt neste gang du kommer, og når det samme bildet dukker opp igjen i neste års eksport.

  5. Duplikater finnes ut fra innholdet

    Hver fil nøkles med en SHA-256 av bytene sine. Arkivets egen sjekksum og lengde er en gratis første runde som bare antyder et treff; ingenting behandles som samme bilde før hashen er enig. Nesten like fanges separat med en perseptuell hash, der de flate bildene holdes tilbake, for et blankt skjermbilde har ikke noe fingeravtrykk verdt å sammenligne.

    Kopiene som spiser opp disken din ligger i fire forskjellige arkiver under fire filnavn med fire datoer. Bare innholdet finner dem.

  6. Datoer og steder settes tilbake

    Hentet fra sidevogn-JSON-en Google og Meta sender ved siden av hver fil, eller fra beholderen for video, og deretter skrevet inn i JPEG-en som EXIF DateTimeOriginal og en GPS-blokk - bygd opp på nytt i sin helhet i stedet for spleiset inn, for å sette inn et felt forskyver hver eneste posisjon etter det.

    En halvveis riktig EXIF mister datoen og flytter posisjonen, og det er verre enn å la den være.

  7. Du skriver den ut og beholder den

    Rett til en mappe gjennom File System Access API der nettleseren har det, eller som ett strømmet arkiv der den ikke har det - komprimert mens det skrives, så bare innholdsfortegnelsen holdes. Beskrivelser går inn som XMP dc:description, som Lightroom, digiKam, Immich, Bridge og Apple Bilder alle leser.

    Vanlige mapper og vanlige filer. Flytt dem til en NAS eller en disk i en skuff, og de er fortsatt sortert og søkbare uten at noe av vårt er involvert.

  8. Du glemmer at dette skjedde

    Vi har ingenting å slette - det finnes ingen konto, ingen server og ingen kopi av dataene dine noe annet sted enn på din egen maskin. Det som er igjen etter en økt er en liten haug arbeidsfiler i din egen nettleser: sammenligningene, de reparerte datoene og de små miniatyrkopiene. Harmløst, og ditt.

    Én knapp sletter dem, etter å ha sagt hva som forsvinner og tilbudt å lagre arbeidet til en fil først. Tar du imot det, er de eksporterte mappene alt som står igjen; tar du knappen, finnes det ikke spor igjen av noe av dette - ikke hos oss, for det var aldri noe der, og ikke på maskinen din heller.

Hva hver tjeneste sender, der en ekte eksport er åpnet
Tjeneste Kommer som Vanlig ventetid Lenken varer Leses
Apple.zip, ofte flereopptil 7 dager-Bilder, video, kjøp, filer
Google.zip, opptil 50 GB hvertimer til dager1 ukeBilder, video, posisjonshistorikk, e-post, nettlesing, kjøp
Snapchat.zip, JSON + medieropptil 30 dager-Minner, meldinger, posisjon, venner
Samsung.zip, ofte flerenoen dager-Bilder, video, helseoppføringer, filer
Instagram.zip, JSON eller HTMLtimer til dager4 dagerBilder, video, meldinger, innlegg
Facebook.zip, JSON eller HTMLtimer til dager4 dagerBilder, meldinger, innlegg

Apple Health er også åpnet for ekte - 383 000 oppføringer ut av én fil på 161 MB - og står utenfor tabellen bare fordi den kommer fra telefonen og ikke fra et nettsted. Disse leses også: Reddit, Spotify, X, Discord, Strava, TikTok, WhatsApp, Fitbit, LinkedIn, Microsoft og Amazon. De leserne er skrevet ut fra det hver tjeneste dokumenterer, og ingen av dem har møtt en ekte eksport ennå, hvilket er en svakere sak og sies rett ut på hver eneste av veiledningene deres.

To ærlige begrensninger. Å skrive en dato tilbake krever JPEG - andre formater kopieres urørt og rapporteres, ikke forbigås i stillhet. Og det å skrive mapper krever showDirectoryPicker, som i dag betyr Chrome eller Edge; Safari og Firefox får ett strømmet arkiv i stedet.

Åpne en eksport  /  Hva som lagres, og hvor  /