Analysis updated 2026-06-24
Generate a Top 200 X circle PNG from your own archive
Rank your closest X contacts by a weighted DM, reply, mention, and retweet score
Explore an interactive force graph of your X interactions locally
Tag top handles with role labels inferred from public bios
| dcbuild3r/x-circle | atomicstrata/atomicmemory | azerdsq131/mcpm | |
|---|---|---|---|
| Stars | 6 | 6 | 6 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | moderate | moderate | easy |
| Complexity | 2/5 | 4/5 | 2/5 |
| Audience | general | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
App runs in a minute on sample data, but a real graph requires requesting your X archive which can take days to be ready.
X Circle is a small local tool that turns your personal X (formerly Twitter) data export into a private network graph of the people you interact with most. The output includes an interactive graph of small avatar nodes and a Top 200 circle screenshot with your profile in the centre, which you can save as a PNG or copy to the clipboard. The project is a standalone extraction of an existing X network feature from a larger Obsidian Portal project. Everything runs in the browser after you generate a single JSON file from your archive. The README walks through the X archive process: open Settings on x.com, go to Your account, choose Download an archive, confirm your password, request the archive, and wait for X to email you when it is ready. After downloading the zip you move it into a stable folder and extract it. Inside you get files like tweets.js, follower.js, following.js, and direct-messages.js. To build the graph you run an import script against the archive's data directory. It writes the JSON file the app reads, plus normalised JSONL tables for interactions, followers, and following, and a readable markdown summary of the top 200 contacts. Each row in the interaction table records counts for direct messages sent and received, mentions, replies, and retweets, along with a combined interaction score. The score weights direct messages most heavily, then replies, then mentions and retweets. The archive does not include profile pictures for everyone, so there is an optional script that fetches public X profile images for the top handles. Environment variables let you cap the number of handles, target specific handles, or set how many concurrent fetches to run. There is also a workflow for using an AI assistant to tag handles with role labels based on their public bios. The README is clear about privacy: imported archive data stays on your machine, and the generated folders should not be committed to Git.
Local browser tool that turns your X (Twitter) archive into a private network graph and a Top 200 circle PNG export, with optional avatar fetching and AI tag enrichment.
Mainly TypeScript. The stack also includes TypeScript, Bun, Vite.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
Verify against the repo before relying on details.