Feline Resiliency

Back with some updates: Twitter fixed, Threads added, new Lemmy support. You should get the update automatically. No idea how well the Lemmy stuff works between instances. It’s a start.

First off, want to thank Nitter for figuring out the proper incantations to get Twitter cracked back open.

Ok so this recent Hacker News comment really resonated:

Seeing all Reddit apps shut down, I can’t help but wonder — what is it that made everyone play by the rules? What happened to the adversarial interoperability spirit? What forces people to use their own API keys instead of pretending to be one of the official apps?

It wasn’t always like this. 15 years ago, when ICQ was huge, everything with a screen, keyboard, a network interface, and a way to run arbitrary code had an unofficial ICQ client for it. Most people haven’t ever seen the official clients. That’s just one example. What happened?

Let’s hold on to that term adversarial interop! Apps like Pidgin were a huge inspiration for Fraidycat, now that you mention it. And great use of the AI acronym.

Looking back at the last four years of commits, it’s wild to see what has stayed the same. A lot of our interop has stayed the same.

Source Last Updated
RSS Never
Tiddlywiki Never
Twtxt Never
Bandcamp Oct 2021
Instagram Dec 2023
Lemmy July 2023
Neocities Never
Patreon Oct 2021
Pinterest Sept 2022
Reddit Never
Soundcloud Oct 2021
Threads July 2023
TikTok July 2022
Tumblr Feb 2023
Twitch July 2022
Twitter July 2023
YouTube July 2022

Mastodon is counted with RSS btw. And: despite all the recent hatred for Reddit, I do appreciate that their RSS feeds have been solid. Maybe they don’t know!

Nice to see some of these connector live for over a year. I guess it’s not as adversarial this way - but good to have peacetime occassionally as well.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Wakey Wakey

A year has passed since my last update! Thank you to everyone who has been cataloguing issues on Github. I have taken the time to go through them all and have fixed up all of the rules for fetching Twitch, Twitter, TikTok and YouTube. I have not needed to update the RSS, Atom, JSON Feed, Twtxt or Tiddlywiki rules. Open formats sure are amazing, are they not?

There is no need to update your extension to get the updates. I was able to make all the changes to the rules - without needing to update the extension. Hopefully you’ve already noticed those broken sources whirring back to life.

The updated rules for Fraidycat are a big step forward. The TikTok rules, in particular, are better than ever. They no longer require a rendering engine to perform their work.

Twitter APIs have also improved in that time. At least I think so.

However, it is a shame that my absence in any way should effect these services! Would that they all just used our beloved RSS. I suppose I’d be out of a job.

Now, I know that I’ve stretched your patience - a year is a long time without updates. But I do love Fraidycat (possibly more than you) and am eager to find its next journey. With any luck, I can find that trailhead soon enough.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Fraidycat 1.1.10 – Robin Sloan Spelunked For You

Had no intentions of releasing anything at the moment, until Robin Sloan showed up in issue #220 and started gearing up for a journey into the dark.

Oh and Fraidycat’s website was down last night. I’m so sorry about that! Issue #210 is the place to talk about how to remove reliance on this website.

Okay, going back to Robin’s efforts. The initial comment from that issue:

I’d like to do a little investigating myself, and maybe even figure out what the issue with the newly-added feed is (I get the impression it didn’t quite “get added correctly”, whatever that might mean) but I don’t know where to look.

My question: is it possible to inspect (and maybe even edit) the extension’s synced feed list somewhere in Chrome, either using the JS console or some other tool? If anyone can point me in the right direction for spelunking, I’d be happy to investigate (and report back, if desired).

I’ve provided a new page called Spelunking Fraidycat’s Save Files, that is a guide to the localStorage and syncStorage files used by Fraidycat’s internals.

Might as well give you a taste of that list:

In local storage (storage.local), we have:

  • /follows.json: The master list of all the follows on this browser. Includes the most recent posts as well and the stats for the graphs. This file is kept in memory the whole time, so changing this file will not do a whole lot. It gets overwritten quite a lot.
  • /feeds/ Each follows has a file that stores a full post history and all of the details. The name of the file is /feeds/ - the same ID used in the URL of the ‘edit’ page for that follow.
  • /social.json: This is just a personal copy of the instructions at, in case the website is down.
  • fraidycat: Just a list of when each follow was last fetched.

And in sync storage (storage.sync), we have:

  • /follows/0follows/999: These are sections of the follow.json (very stripped down) to indicate when a follow is added or deleted. This is how the sync happens. These files are split up to get around file size restrictions on sync content.

Feel free to spelunk yourself. This update is now out for Chrome, Firefox and all other browsers that support this extension.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Fraidycat 1.1.9 – Thankyou Andrew Anderson

This release is all you - I abdicate. Fraidycat users submitted a variety of fixes on Github - including an important fix to syncing from @andrew-wja.

Was so happy to get this message in early April:

Hi, I had a bit of spare time this week so I had a look at the code, and I think I see the problem here […]

I also got some repairs filed from rafapaezbas and from rosano aaaaaand from j-james. WOWOWOWWO!

I’m hugely occupied with Multiverse, so I’m very glad for the help from all the little tappy fingers out there. (And thankyou to everyone who has joined THE OUTER WEB and brought such juicy discussions with them.)

Okay - this release is out right now for Firefox. Chrome (and Brave, etc) should update in a few days. Peace.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Fraidycat in The Outer Web on Discord

A @glitchyowl / @kickscondor joint. Home to Fraidycat, Multiverse, MakeSpace and more.

Since I’m sure most Fraidycat readers just want to be left alone, I don’t feel terribly bad about taking this long. But I do feel terribly disconnected from all of you - unsure who you are and what you’re up to and whether Fraidycat is doing anything at all for you! We haven’t had anyway of talking about Fraidycat really - no mailing list, no forum, very little socials, just the issues page. (Which has been very helpful as well! But isn’t great for meandering conversations.)

To that end, here is the Discord link: The Outer Web.

I realiize this is a bit of an odd choice - given that you can’t follow a Discord server in Fraidycat. But maybe that should change. And maybe there are better options in the future. For now, I think this will work.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Fraidycat 1.1.8 – The Cat Returns

Bit of a rocky two weeks - working through bugs and the Google store approval process. The cat is back - extra requests are fixed now and an additional sync bugfix is coming soon thanks to andrew-wja on Github!

Perhaps you’ve noticed that Fraidycat has been 404 on the Google Web Store for the past week. I’ve been working through issues getting Fraidycat to meet new guidelines for extensions. But we’re through that and back up again.

Here are the latest extensions:

No desktop updates at this time. These issues didn’t effect that release. I am hoping to focus on a 1.1.9 release for all of these platforms.

On that note, I want to give exuberant thanks to Andrew Anderson for the hawt pull request - yes, I know I sound stupid when I say it like that, but very worth risking it to express my unequivocal gratitude to Andrew - which introduces a vital bugfix for browser sync on Firefox and Chrome.

I think this fixes the reappearing follows logic noted in #214.

Removed the path in the logic where an incoming follow with the deleted field is added to the local follows and then not removed due to a mutual exclusion in two nested if statements.

Sooooo more good stuff to come!

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Tumbling, The Future

Thanks to suggestions by sogen on Github, Tumblr support has been improved in Fraidycat. Futureland users and journals can also now be followed! Also have had recent fixes to Twitch and TikTok.

The issue with Tumblr was that their RSS feeds are terrible. There are no titles in them. And the rest of it is just a big dump of jumbled words.

Fraidycat now uses the API to communicate with Tumblr. However, you may bump up against rate limits (a 429 error), if you follow too many Tumblrs. Just save the follow anyway and it should show up later.

(If the rate limits end up being a big issue, we’ll move back!)

Another great new addition is Futureland, a nascent blogging site - largely used for tracking progress on long-running efforts. Like drinking tea, which is a lifetime effort.

@glitchyowl and I have been keeping our ‘multiverse diary’ there. People mentioned wanting an RSS feed. Well, I can’t do anything about that. But, fortunately, Fraidycat doesn’t care anyway.

Now you can follow Futureland users - or even specific journals.

If there are any sites you want to see added to Fraidycat, send a message to @fffraidycat!

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Cat Container

A tip from shambulatron on Hacker News, regarding keeping Fraidycat quarantined in its own ‘container’.

To provide some context, this was in response to a comment by bajsejohannes:

Somewhat beside the point, but I don’t understand how people are not terrified of browser extensions. I have decided to trust two and hoping to get rid of one of them eventually.

I’m not about to get a browser extension for an RSS reader.

I have to admit - I agree with this comment. Extensions are not the best kind of software to have around. I feel I will always support Fraidycat as an extension, so long as it’s useful to people. But I hope to offer more, later this year.

Response to this from shambulatron:

I run Fraidycat in a separate Firefox profile which I don’t use for anything else. If I want to hang onto a link from a feed, I’ll just open it again in my main profile. I’ve found a side benefit in that the slight extra friction of opening a window for a new profile results in less frequent checking for feed updates, which seems like a good thing for me.

I also have my Fraidycat profile set up with the Temporary Containers extension, so that every link I open from my feeds automatically opens into an ephemeral container and nothing is shared. Doesn’t protect against Fraidycat itself, but does keep things of only passing interest nicely hived off from everything else.

I’m guessing that this second profile also has its own login - to allow Fraidycat to sync all the follows inside the Firefox account.

While I hope that I offer you a trustworthy service that is well-behaved, I’m grateful for these tools that offer you increased security and control, so that you can use Fraidycat with confidence.

Would love to hear any other advice that’s out there!

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Glitch in the Plan

I have halted everything to work on a collaboration with @glitchyowl - a project that will be adjacent to Fraidycat - but which has caused me to postpone Fraidycat 2 temporarily. I will continue to fix problems that arise, of course.

Above is an image that Weiwei dropped during the New Year’s Eve Scrappychat. More to come about this collaboration and future plans for Fraidycat 2.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.


Unexpected, Useless, and Urgent

An essay passed on by h0p3 covers the differences between online communication and tries to extract what is wonderful about RSS. This seems to vindicate Fraidycat’s strategy in distancing itself from the inbox mentality.

Onto RSS – my beautiful, dark, twisted RSS. There’s truly zero urgency here and relatively few messages (writing blog posts is time-consuming!). Moreover, returning to our message evaluation framework, an RSS inbox only contains messages from known senders, since you’ve explicitly had to add their RSS feeds to your feed-roll. And, since you’ve likely done that because you expect to value the contents of their messages, you’re likely living in the upper left quadrant in RSS-land, enjoying that drizzled honey and those weird-newspaper rolls.

What the essay doesn’t seem to explore is the possibility of giving the user tools to wrangle incoming feeds. While it certainly gives due time to the value of automated e-mail filtering.

Gmail, for example, has gotten pretty darn good at spam detection. They’re “reading your emails” and dropping the bad ones into your “spam folder” dead-letter queue. Maybe, once in a blue moon, they false-positive something that you have to go spelunking into that elephant graveyard to find. But I’m never annoyed by this, because when I see absolute garbage that they’ve blocked for me day-in and day-out, I’m hashtag grateful again.

This approach, however, isn’t possible with all mediums. There’s no way to pre-filter on content for an incoming phone-call, for example.

Spam filtering is a must with e-mail, because it’s designed to accept messages from any possible source. Have to agree with the author that the “blunt approach of dead-letter queueing” undermines the chance at great, unexpected e-mail from anyone on Earth.

RSS (and other follows) are an inversion of this: it’s literally an approved sender list, firewalled against anything else. This implies work on your part, even if only to add URLs to this list.

So why is there not more focus on giving you layers of control over this list? It needn’t just be a flat list. Of course it can be categorized, but to additionally add priorities, search terms, and filters of all stripe.

For example, you could envision following Boing Boing - but only highlight those posts that other members of your follow network are linking to.

I think I might want to read only the longer essays posted on a given blog. Or filtering for/against ‘weeknotes’ entries.

And, for sure, the ability to assign importance, so that you can still have access to less-urgent follows, but they don’t crowd you out day-to-day.

While all of this moves RSS closer to the upper-left of the above quadrant, it doesn’t eliminate the ‘unexpected’ discoveries. RSS is much more link-heavy than e-mail and text. There is no trouble expanding your followed network, because you’re exposed to new links all the time, by way of RSS.

The trouble with RSS is that it doesn’t feel like a cohesive network yet. We have some plans to improve this in Fraidycat 2. More about this in a few weeks.

This post accepts webmentions. Do you have the URL to your post?

You may also leave an anonymous comment. All comments are moderated.