You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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).
Yeah sure! Here's some knowledge.
What Goes Where
First off, let me just list all the files used by Fraidycat.
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/neocities.org-8e00f075.json: Each follows has a file that stores a full post history and all of the details. The name of the file is /feeds/domain.com-hash.json - the same ID used in the URL of the 'edit' page for that follow.
fraidycat: Just a list of when each follow was last fetched.
And in sync storage (storage.sync), we have:
/follows/0...follows/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.
Where to See All of This
You know you're in the right place if this command brings up all your follows:
The command to see all your follows here is:
Examining These Files
Just to give you a bit more to go on, you can look into the contents of a specific file using this command in Chrome:
chrome.storage.local.get(['/follows.json'], o => console.log(JSON.parse(Object.values(o).pop())))
(Using the name of the file in place of '/follows.json'. The object inside the file will show up in the console.)
For Firefox, use:
browser.storage.local.get(['/follows.json'], o => console.log(JSON.parse(Object.values(o).pop())))