Advertisement · 728 × 90

Posts by Steven Vandevelde

Yeah, I think I’ll focus on “themes” to start with and then say, hey, you can actually use some theme parts individually and remix them; and, there’s also specific interfaces that don’t belong to a theme.

Where theme = web app style interface, can look like whatever (eg. win98 winamp vs spotify)

1 day ago 1 0 0 0

Welcome to the club 🙌 NixOS I assume? Looks good!

4 days ago 2 0 1 0

On device, for example, so you could more of a distributed consensus mechanism.

6 days ago 1 0 0 0

- 3rd point, also not true, UCAN delegation tokens are not bundled by default. They refer to each other using CIDs. That was the case in original prototype, but that was ages ago.

6 days ago 3 0 0 0

Interesting!

Couple notes:
- Not exactly improvements, more like tradeoffs.
- Revocation lists can be local too, in that case they do work offline (depends on what you’re modelling after though).
- 2nd point, not true, Bob needs to explicitly delegate to Carol. UCANs can be public info.

6 days ago 2 0 2 0

Depends on your app architecture and core audience I guess?

If your core audience is quite technical I’d say yes, we can defer the responsibility of recovery to the password manager.

If using capabilities, then it’s just a matter of who’s holding the set of caps.

Otherwise, what Blaine said.

6 days ago 1 0 0 0

Listing individual records also increases the “limited interactions” counter so I’m reading the entire repo using the CAR file, which is also hugely inefficient.

So basically the initial bi-directional sync is the issue.

6 days ago 1 0 1 0
Advertisement

Bluesky’s PDS has a limit on the amount of record interactions per hour. 1500-ish I’m guessing, in any case not enough to add 20K in one go; when importing data.

It’s mostly that. I got around it by stuffing as much data as possible into one record, but then I lose the ability to do partial updates

6 days ago 2 0 1 0

Maybe upload some data as a blob. Curious to know how, and if, you’re solving this.

1 week ago 1 0 1 0

Looking forward to this!

I’m struggling with my rudimentary local-first atproto sync. It works ok with a normal amount of data, but once I need to import 20k records it’s rate limit errors all over the place.

I wonder if we need permissioned data to land, a separate storage, or something else? 🤷

1 week ago 1 0 1 0

In case he doesn’t answer, he’s very familiar with the different capability models. He worked on ucan.xyz/specification/

1 week ago 0 0 1 0

Actually, could I just skip the API and publish a Rocksky scrobble record straight to my PDS? Does Rocksky pick that up?

Sorry for all the questions!

1 week ago 1 0 1 0

Anyhow! Thanks again so much 🙏 The search for a great main screen and user experience continues!

1 week ago 1 0 1 0

Couple other notes:
- Great call on the delete thing, it's a danger zone for sure. I like your idea of an "edit modules pages" or an advanced user section.
- The current hosted version is quite slow yea, I have over 50k redirect rules on Netlify which makes it slow to load pages (also an experiment)

1 week ago 1 0 1 0

Maybe we do something half-way yeah, with a sidebar.

This whole problem is on my to do list, how do we figure out the "gentle slope of user customization"

tbh, I'm still figuring out what this thing exactly is.

There's like so many possibilities with this, and it's hard to distill it.

1 week ago 1 0 1 0

Much like you can move around the Winamp player in Diffuse's Winamp theme.

I also thought of making themes the entry point, which is kind of like that preset thing you were talking about; but that felt like being dropped into a regular web app, and wouldn't showcase what is possible.

1 week ago 1 0 1 0

Another idea here is that I want us to escape the regular browser window box and also use tools such as tangled.org/burrito.spac...

The thinking there is that you would load separate interfaces each in their own little browser window (aka. web view) that you can move around.

1 week ago 1 0 1 0
Advertisement

I thought of doing exactly what you described, building your audio player. I do want to add that capability as well, but I'm not sure yet I want to make it the primary focus or not.

At the moment the main Diffuse screen is more like a marketplace I guess, you're browsing through available modules.

1 week ago 1 0 1 0

I don't know yet how to properly communicate this interfaces concept.

So technically, interfaces are just web pages that you open. Saving them (ie. turning on the toggle) is basically just bookmarking them, saving a reference.

It's quite confusing in combination with features yeah.

1 week ago 1 0 1 0

Good to know it's still too technical.

It's not so much that you're building one audio player, but rather that you have multiple "separate" interfaces that all work on top of your data and your enabled *features* (red)

I can totally see how the toggle doesn't make sense for the interfaces (blue) 🙈

1 week ago 1 0 1 0

Thanks so much! This is super valuable!

So I should probably emphasize that this is still in the experimental phase 😅 It's quite buggy yeah, I'm still making big architectural changes every day.

I made it public already so we can have chats like these ❤️

1 week ago 1 0 1 0

Thanks! It's working now 🙏

1 week ago 2 0 0 0

@rocksky.app Hi! Would love to implement Rocksky, but hitting some CORS errors. Does the API audioscrobbler.rocksky.app/2.0/ support CORS?

1 week ago 2 0 1 0

I’ve been trying to make atproto local-first as well with its current architecture but constantly bumping into rate limits on the pds because I’m trying to import 20000 records 😅

I guess it could be associated data, not published as records, but where do we put that? Wait for permissioned data?

1 week ago 1 0 1 0

@blaine.bsky.social Thank you sir for another great cheese talk 🙏 Love this framing!

1 week ago 3 0 0 0
Advertisement

@hilk.eu Thanks for your atmosphereconf presentation, great work 🙏

I did not know you were part of Amatorski! That's so cool, "Come Home" is such a lovely song.

1 week ago 7 0 0 0

I just saw the awesome Web Tiles talk from ATmosphereConf which demos a little audio player and I now wish I could adapt my thing.

Still not sure it's actually possible. I worry that it does too much sandboxing to integrate with various api/oauth flows, but maybe I'm thinking of this the wrong way.

1 week ago 6 0 1 0

Thanks! Yup, that’s right. You can even add/edit modules.

It’s a static web page, no backend, so either host it or embed it in a tauri/electron app.

There’s a hosted instance available, because some services it integrates with require oauth or api registration. But all that is totally optional.

1 week ago 1 0 1 0

If you use atproto you could have the loader load that particular custom syncing code I guess. Or maybe there’s some P2P solution…

Not sure what to do with this yet.

1 week ago 1 0 0 0

I’m still figuring out the edge cases with that though. One example is when you add your own syncing method.

If you then try to load your user-data from that custom storage option on a different device, it doesn’t know how to do that because the instructions aren’t there.

1 week ago 1 0 2 0