Keeping My Twitter Receipts in DEVONthink

Previously, I discussed a custom-built app I made called Receipts, which can convert tweets into Markdown files for me to archive and catalog. Now let’s talk about how I use DEVONthink to actually catalog them!

These Markdown files are just files sitting in folders on my Mac (the folders aren’t organized by anything in particular but I do split them up as they get big), and I have DEVONthink set up to index folders on my Mac, as opposed to actually importing them into databases as copied items.

I’m actually quite a big fan of using DEVONthink like this with files. The files themselves are the canonical source of truth, but DEVONthink gives me more organizational power. I can organize and search in DEVONthink, and most importantly, I tag tweets in DEVONthink. An added bonus: because the tweets are just Markdown files on my Mac, when I tag them in DEVONthink, those tags are added to the underlying files and are visible in the Finder too, and vice versa.

Armed with these tools, I tag the shit out of tweets.

Seriously, I have over 1000 tags:

screenshot of Script Debuger app showing that I have 1083 tags in DEVONthink

And they range wildly. I have some highly generic tags like funny or good news, some that are of a more specific genre like called out, and some are oddly specific, like frugal but secretly wealthy (which refer to those “financial advice” articles you always see about how some 25 year old survives NYC on $25k a year and once you dig past the “I don’t have a Netflix subscription” you find the more salient “my parents pay the rent” lede that got buried in there). I have some tags for specific people (the elon musk tag has gotten pretty full).

I save up batches of tweets to tag. That’s partly because I am not very on top of things, but also this ends up working nicely because patterns sometimes emerge in the tweets, especially with breaking events.

Having tags for specific viewpoints or theses is really useful, because the tags become de facto lists of things, and I now have lots of very specific lists of things, like instances of bad takes about covid, or things that aged poorly, or people as things (e.g. Noel Fielding as cakes, Sir Patrick Stewart as Vacuum Cleaners, Tilda Swinton as libraries, etc.)

Some unsolved problems do remain. One thing DEVONthink lacks (that I really miss about Evernote) is the ability to search text in images. A lot of tweets are images of text or at least contain text that’s not otherwise in the tweet (like images of comics). AI text recognition is getting better so I could perhaps update Receipts to include text annotations of images in the tweet file, but I’d like for that to remain either as metadata as opposed to file content, or just be a thing that DEVONthink can natively search. Alas.

Now, the biggest question: Has this actually helped me do what I set out to do?


In reality I don’t talk as much on Twitter as I used to, so I don’t really need to show up with receipts all that often. It’s nice to have them at the ready in private discussions, though.

I’ve been in conversation with friends and they’ll mention that Andrew Cuomo isn’t all that bad, and I can pull up my cuomo is trash tag and very quickly point out years worth of shitty behavior on his part.

One of the first tags I made, Doesn't Violate Community Standards, was me trying to put a name to a pattern I saw a lot on Twitter: when vulnerable people reported people harassing them on social media, the response was often that the person “didn’t violate community standards,” yet conversely vulnerable people would often get punished quickly for small and innocuous infractions. I knew it happened a lot, and even when I favorited tweets talking about it to save for later I’d lose track. Actually creating a named tag and tagging tweets with it now makes it possible for me to show a clearer picture of this issue and be backed by actual instances of this happening.

If I know exact text matches for a tweet I’m trying to remember, it can be super quick to find it in DEVONthink now. It’s not perfect, though! One day I was searching for a very specific tweet and I even knew the specific word being used in the tweet and I failed to find it because it never imported correctly. Luckily, I also remembered who tweeted it so I used Twitter’s advanced search to find the original tweet, and i made sure it imported.

But the actual benefit of keeping receipts on Twitter has been deeper than “let me find this tweet fast”. I found that the ritual of going through the most notable tweets in my timeline and tagging them later is really useful for me. It helps me see connections between things better, and the ritual of tagging gets me in the habit of putting a name to the tweets that have something in common. It helps remind me of recent events. And in many cases I get to enjoy a laugh from earlier in the week once more.

Receipts is also useful as a tweet archive. Tweets can sometimes disappear, and knowing that my computer can instantly archive a tweet to my hard drive is comforting, because sometimes really valuable things get deleted from Twitter for various reasons, from copyright issues to the tweet author growing to regret tweeting the thing.

Once you’ve amassed a big enough collection of this content in DEVONthink, the database becomes sizable enough that it’s its own sizable body of knowledge. It’s something that you can explore and go spelunking in, finding nuggets of information. You can look through tweets that you liked in July of 2021 to see what mood you and the world were in that day. If you were really interested, you could do some analysis on the data and look and see if there are correlations between tags.

I think it’s a really nice reward for what amounts to a handful of minutes of work every week.

Leave a Reply

Your email address will not be published. Required fields are marked *