Follow

oh my god omar.website/tabfs/

“TabFS is a browser extension that mounts your browser tabs as a filesystem on your computer.”

“Now you don't need to code up a browser extension from scratch every time you want to do anything. You can write a script that talks to your browser in, like, a melange of Python and bash, and you can save it as a single ordinary file that you can run whenever, and it's no different from scripting any other part of your computer.”

@wgahnagl [the call is coming from inside the house voice] the internet is coming from inside the local file system

@mood

I cannot tell you how afraid I am of this. Afraid of getting so deeply lost in it I can't climb out. Afraid of getting hooked and then having it taken away.

@resynth1943 i got it off changelog’s github hotness tracker email but no surprise re: HN; there’s so much crossover it’s like a single circle 😂

@mood the scariest part about this is that as i read it more i'm just thinking, "hey, i kinda like this..."

@mood cursed in the way that computers are supposed to be, rather than the way that they usually are

@mood I somehow missed the "tabs are the new bookmarks" trend. By the time it started, I had already stopped using bookmarks and learned to rely on browser history instead.

I didn't even notice when Firefox moved bookmarks out of my way in the UI, I already disabled those UI elements myself on every fresh browser setup.

My tabs are my inbox, not my archive. And I practice Inbox Zero with them.

@mood this will be great for spamming forms that let narcs report "looters", etc

@mood oh my God

it’s… it’s…

BEAUTIFUL

@mood personally I think that having a browser that supports this natively would be awesome. There’s probably a Plan 9 browser that does this actually.

@webb it sounds very Plan 9 ish, doesn’t it? 😁

@mood wouldn’t it be possible to share browser state over a network? That would be fucking awesome. Maybe that’ll be my first thing to try.

@mood I wonder if this can be used to proxy postMessage JSON objects to the JS Window...

@resynth1943 my javascript is nonexistent but what little i know of JSON objects makes me think this would be a slick usage

@mood well, it would ultimately depend on whether or not you can access <iframe>'s in TabFS, 'cos postMessage isn't really useful outside of that.

@mood Instead of writing a browser extension, we "just" need to parse the tab files and edit those. And yes, that isn't different from scripting anything else, but it stinks.

@nodefunallowed it definitely doesn’t necessarily make things easier, yeah—just another approach. which might have a different set of advantages, depending on the problem

@mood It would be a lot easier to do scripting and ad-hoc manipulation if the operating system provided more structure than "a bag of bytes".

@nodefunallowed operating system.. what, you mean this? [snakes fly out of can]

@mood or, better, there shouldn't be one (as Dan Ingalls said), and objects should be passed around like you would usually do inside a program.

@chucker Indeed they do, but piping may or may not be necessary to manipulate these things. Any old programming language with data structures and objects would suffice.

@nodefunallowed for tabs in particular, yes (and if you’re willing to entertain the somewhat odd macOS OSA, you can in fact script tabs from outside the browser); I was thinking files — if files had fs-level “you can treat this as an object of type x, serialized using (one of xml|json|…)” metadata, you could more seamlessly handle them

@chucker XML and JSON have their own syntax, and require serialization. The more complicated the structures you want to pass around, the slower and more awkward this process becomes. Just send the object over!

@nodefunallowed @mood you don't really have to parse anything, from the looks of it each tab is exposed as a directory with individual files for the properties you're likely to care about (title, url, text on page, that kinda thing)

so you'd just overwrite the whole url file with a new url, for example :blobcatgooglyshrug:

@00dani yes, but no, directories don't provide a particularly discoverable interface, and how they map to the protocol being used is still very unclear
this makes it unsuitable for gluing interfaces together, which is something I am actively attempting to achieve, this video explains it: youtube.com/watch?v=MrPXR3sMPc

@mood I have no idea what it is but it sounds scary and cool

@sylveon [oprah voice] and YOU get a file! and /you/ get a file!!

@mood

Close all Stack Overflow tabs $ rm mnt/tabs/by-title/*Stack_Overflow*

I love it. most blessed thing I’ve seen this year

@mood didn't try yet

but I'm a fan already

and why the hell isn't this build in in all modern browsers?

@drazraeltod
cause they now mostly all rely on Chromium or Chrome and Google is not supposed to be open, free or just kills innovation
@mood

Sign in to participate in the conversation
jorts.horse

Unstoppable shitposting engine.