almanak

Your X archive, finally easy to explore.

X hands it over as a folder of files nobody can read. almanak turns that into a timeline you drag through, a gallery of every photo, and search that answers as you type. It runs in your browser and uploads nothing.

Free and open source, MIT licensed. Read the code that handles your data.

Try the demo right here

An invented archive, in the real app. Click it, then drag the track. An invented archive, in the real app. Tap to open it.

almanak demo running here, in this page

Open Gallery and Analysis too. None of the posts are real, and nothing you do here is saved.

You need your archive first.

  1. Ask X for it.

    Settings, then Your account, then Download an archive of your data. It takes a day or two to arrive, so start now.

  2. Drop the ZIP in.

    Or pick the unzipped folder. The page reads it from your disk and remembers the folder, so you only pick it once.

Your data stays yours.

almanak is a static page. It reads your export from your disk, inside your browser, and sends nothing anywhere. No account, no server.

  • No uploads. The app has no backend, so there is nowhere to send your archive.
  • The app makes no requests at all. This landing page counts visits with a self-hosted counter; the app itself loads nothing and talks to nobody.
  • Direct messages are never opened. The code refuses those files outright, and a test keeps it that way.
  • The build fails if any code outside the demo loader can make a network request.
  • "Delete everything" in Settings clears all locally stored data and reports what it cleared.

You do not have to take this on trust. The source is public and MIT licensed.

Questions

What people ask before handing over an archive.

How do I open my X (Twitter) archive?

Ask X for your data in Settings, then Your account, then Download an archive of your data. It arrives as a ZIP within a day or two. Drop that ZIP on this page, or pick the unzipped folder, and it opens straight away. There is nothing to install and no account to make.

Is my archive uploaded anywhere?

No. almanak is a static page with no backend, so there is nowhere to send it. Your browser reads the export from your own disk and everything happens in the tab. The source is public if you would rather check than take our word for it.

Can it read my direct messages?

It never opens them. A single allowlist decides every file the app is allowed to touch, direct-message files are refused outright, and a test suite keeps that true as the code changes.

Which browsers work?

Chrome and Edge can open a folder directly, which is the smoothest route for a large archive. Firefox and Safari have not shipped the File System Access API yet, so they fall back to dropping the ZIP, which works everywhere.

How large an archive can it handle?

It parses 200,000 tweets in about two and a half seconds and answers searches in well under a tenth of a second at that size. Media is read one file at a time rather than loaded up front, so a media folder of tens of gigabytes is fine.

Does it work with Turkish?

Yes, and deliberately so. Search folds the dotted and dotless i together and peels stacked suffixes, so searching model finds modelleri and searching isik finds IŞIK. General Unicode case folding gets Turkish I and İ wrong in opposite directions, which quietly breaks search in most tools.

What does it cost?

Nothing. It is free and MIT licensed, and you can run your own copy from the source.