export any twitter profile's tweets and media into a zip with an html viewer and csv
Find a file
2026-01-03 10:49:49 +00:00
.github/workflows windows and linux builds 2026-01-02 17:35:55 +00:00
assets prepare for public release 2026-01-02 18:53:04 +00:00
src fix login on builds in macos 2026-01-02 19:49:48 +00:00
.gitignore initial commit 2026-01-02 17:03:18 +00:00
bun.lock fix login on builds in macos 2026-01-02 19:49:48 +00:00
forge.config.js fix build (hopefully) 2026-01-02 17:10:59 +00:00
LICENSE prepare for public release 2026-01-02 18:53:04 +00:00
package-lock.json fix login on builds in macos 2026-01-02 19:49:48 +00:00
package.json fix login on builds in macos 2026-01-02 19:49:48 +00:00
README.md fix xattr command 2026-01-03 10:49:49 +00:00

TwitterArchiver

export anyone's tweets and media into a zip with an html viewer and csv.

installation

alternatively, you can download the source code and build it yoursef:

git clone https://github.com/twitter-cat/twitterarchiver.git
bun make

usage

archiving a profile

  1. tap "login with twitter". a window will open for you to login.

  2. enter of search for the twitter handle of the user you want to archive. you can click any profile on the list.

  3. tap "start archiving" and wait until you've archived as many tweets as you want. you can always pause to edit the search query. once you're done, tap "finish" and select a download location

viewing your archive

your archive file is a zip that contains an html viewer, a csv with all tweets data and a folder with all of the media.

due to browser limitations on fetching files, you can't just open the html file directly on your browser.

if you'd like to view it locally, you can use a simple http server. if you have bun installed, unzip the file and run:

cd path/to/your/archive
bunx serve

if you'd like to share it with the internet, you're going to need to upload it to a web server.

if you already have your own solution, go with that. otherwise, we recommend using cloudflare pages:

  1. sign up
  2. tap "New application"
  3. select "Upload your static files"
  4. upload your zipped archive. feel free to customize the subdomain, then tap "Deploy"
  5. deploying should take at most a few seconds. once you're done, click "visit"

faq

how can i be sure the prebuilt binaries are safe?
all releases are built by this github action. i couldn't add malware even if i wanted to. if you don't trust github, you can still build from source.

why do i need to login with twitter?
twitter now requires authentication to use search, and the api is basically useless

is my twitter login data stored anywhere?
only locally. we store your twitter cookies so you dont have to constantly log in. due to issues with logging in using the system keychain (specifically on macos), this data is stored in the TwitterArchiverStore file in your user data folder.

why electron?
it's the best way to do with what this needs. managing 3 different codebases, each requiring to show webviews, retrieve cookies, execute javascript in webviews, and a decent ui isn't really feasible with other technologies

also, i like javascript.

why not tauri?
it's not really any better, plus the complexity of rust and a smaller ecosystem.

license

AGPLv3.0

we strongly discourage using this software for any other malicious activity.
please ensure you have permission before archiving tweets from any user.


built by twitter.cat
not affiliated with X Corp.