Drop a Meta “Download your information” ZIP, get one Markdown file per Instagram or Facebook chat.
Open the page, drop the ZIP, copy or download .md files (or a zip of all of them). Then read, grep, or paste a chat into another model.
It runs entirely in your browser. The ZIP is opened with JSZip in the tab. Nothing is uploaded, there is no backend, and there is no API key.
Instagram or Facebook: Accounts Center → Your information and permissions → Download your information. Choose JSON.
- Instagram:
your_instagram_activity/messages/inbox/<thread>/message_1.json(andmessage_2.json…). - Facebook:
messages/inbox/<thread>/message_*.json(same schema).
Each message_*.json is { "participants": [{"name": "..."}], "messages": [{ "sender_name", "timestamp_ms", "content" }] }.
Instagram historically writes UTF-8 bytes as Latin-1. Names and message text are repaired with latin-1 → UTF-8 when that yields better text.
Media (photos, videos, audio, shares, stickers) is skipped. A media-only message becomes (media skipped).
Messages in Instagram files are often newest-first. The markdown is chronological, oldest first. Shards for the same thread folder are merged.
Anything else fails with a clear error. Unknown ZIPs do not produce empty output.
Files never leave the browser. There is no server to send them to.
Open index.html in a browser, or serve the folder with any static file server.
vendor.js is JSZip 3.10.1 (MIT or GPLv3).
MIT — see LICENSE.
Created by Georgi · part of aithings.online