Yeah, here's some fish, we've had that fish sent. But just press here and pay and then the fish will be sent or whatever, you know. So that's really not far away. Like that's really not far away. The sharing video calls, that's a really intricate question. And we're doing peer to peer, right? We're not like, to a certain extent, right, if we... There's some stuff that we're doing that we're keeping to ourselves, because we need to get far enough ahead and create enough of a... We have to engage the network effect to get enough people using Keap, so that we can fully open... I don't know if we're open-sourced. We're open-sourced in a whole version or whatever. We have to be careful about the risk there, because it's very, very simple for someone to just steal it and shitcoin it. And that's the problem we're trying to avoid. So we don't want to get this far and then just like, you know, lose it all at the last hurdle. So like stuff like the video stuff and all of that, I'll talk to the team and see what we can turn into libraries, but like, it's not the highest priority. That's something that you've got to figure out as an app developer, right? It's just like, we've not done anything special. We've not done anything magical. It's like, it's Electron, Chromium, and kind of stuff you've got to figure out.
Avi, not yet. So Pair Worker is coming, and that is the first type of a sort of bot plugin, if you like. But for sure, in the future, hopefully we will, unless we take a weird turn. Because like the other thing to note here is anything I say, like is not guaranteed at all, unless it's already out, because things are moving very, very quickly, both with our development and what we're doing, but also like out in the world, like, and so we have to constantly be on our toes, so I can't guarantee anything. But I think that that will happen, but I can't guarantee anything.
Distributed Search, yeah, great. Oh man, I'm big into the Distributed Search thing, right? But we're not quite there, right? Because what is Search? What does it Search? What do you need to Search? You need an index. So, as I was talking about with the alias indexes and the user name indexes and so on and so forth, once you have indexes and you have indexes of indexes and so forth, you're looking like, now you can do Search. A key chatroom, in a way, is a type of index, if you put links in it, right? Like, you can put other pair links in a key chatroom. You can put other pair key links in a key chatroom, so you can have a chatroom that's a link that has lots of links to other chatrooms. So that's the kind of index, right? But we need to get a bit more structured for Search and stuff, but again, it is structured. It's just chat data in a structured format, so we could search it. I think what I'm saying is, we need usage to organically grow for that to make sense to do, but it's on the menu.
Rooney, you don't need to know Node.js. You do need to know JavaScript, and it would help if you know Node.js, because similar principles. At the same time, you're gonna need to unlearn stuff to use pair. Node went from being a very small core-focused project to wanting to support web APIs, and that's a big arc. So, don't expect to be able to use fetch and pair, like globally, ever. Except in the desktop, because that's a web API. But in terminal apps, no. There should only be one way to do something, generally, particularly in terminal apps. And we don't think web APIs are actually a great way of doing things. Well, some of them are. Some of them are. That's why we're using them, but you know, like putting web APIs into a node, a non-UI scenario, isn't that smart, in my opinion. Or, no, I'm not saying it's not smart, because Node made that decision for very good reasons to do with community, and to do with engagement, and stakeholders, and all of those kinds of things, and that's totally fine, but what we're trying to do in the way we're trying to do it, it doesn't work. Or isn't what we would want to do. Pair desktop is just running code in Node, as opposed to paired on it. Yes. Yeah. Simon, yes, exactly, you're correct. The next iteration, when we get to this, will be to pull Electron out, and replace it with Chromium and Bear. So you will be going onto Bear, but PairWorker, which is coming out very soon, it runs code in the terminal app. So when you have a separate PairWorker, you can run all of your Bear code in that. But you can also do that thing with Pair init W Node, again, it's gonna need to come out in the next release, so wait one week. You can create Bear apps that run with Node code. So you can go the other way, and you can use a Node code approach in Bear and Electron, if you like. But you can also just run it in a worker. And I think the target architecture, and we're not quite there ourselves yet, but we're working towards it in Keyed as well on desktop, the target architecture is to have this separate worker with all of your logic. And then you have all your UI logic completely separate in the UI, in the renderer process, and just keep those separate. And then that Bear code, that's gonna be Bear, and that will run in the terminal, in your worker, in your mobile app, and you don't need to change a thing about it. Like, it'll be the same thing everywhere. There's many ways to skin a cat, man. Bugatfa. Bugatfa. We use Autobase and Course or I don't exactly know how it works, because Andrew is the man for that.
Avi, the answer to that question. Can I package external executables into a pair app? No. No external executables. You can. You can put anything you want in there and then you can spawn it, but I wouldn't recommend it. Multi-platform's an issue for a start, right? So if you were to do that, you would have to have builds for every platform and then you'd have to figure out how to spawn the right one for your platform. So you could do it that way. But what Bear also has is support for native add-ons. It's similar to how Node has native add-ons. So you can integrate C libraries in a terminal app with Bear. So that means that we actually, while it is a JavaScript environment for peer-to-peer apps, actually, you could write your whole peer-to-peer terminal app in C and just load it as a Bear extension and that would be very, very fast also. Yeah, nice one, Simon. Yeah, next week or shortly after, it'll be out. But remember, I'm not a reliable narrator. Anything I say should be taken with a pinch of salt.
Yeah, Rooney, so we didn't use React to start off with, because we didn't want to get down that BuildFlow.jsx kind of rabbit hole, right? So we used Preact. It's not the fastest, though. If you use Compile.jsx, it's faster than using Preact, like in the browser. Like the front-end web frameworks, a lot of them are set up to be performing in the sum total of the round-trip from server to client and how fast it works in the client and how fast it works in the server. And there's this sort of trade-off of things. So at some point, I'd like to actually, I don't think I'm gonna be allowed to do this, because, you know, like, priorities, but I'd love to write a front-end framework for Pair. I probably never will. But yeah, our plan is to support everything. Preact is good to start off with, though. That'll get you there quick. Once we have Transform supported, we'll have like a JSX flag or a JSX config set or something like that, so that you can, and by the way, there's like 70% done as well. We need to pick that back up, actually.
Comments