you can just do things
24.07.2025 00:20 β π 1 π 0 π¬ 0 π 0@dio.la.bsky.social
lead @proton.me (docs), writer at dio.la - ex Automattic/WP core - @ariakit.org & @biomejs.dev core, @solidjs.com ecosystem team, lexical.dev contributor
you can just do things
24.07.2025 00:20 β π 1 π 0 π¬ 0 π 0hmm I would expect Proton Mail to have some kind of warning here.
maybe if you file an issue something can be done to alert about this? I know we already have some warnings about similar stuff.
if you send a ticket I can try to give it some priority internally, as this seems quite serious.
hired
15.07.2025 09:47 β π 0 π 0 π¬ 0 π 0to clarify, I mean a library that handles it in a way that would allow us to support it.
12.07.2025 13:05 β π 1 π 0 π¬ 1 π 0afaik, there is no browser-based library that handles ODF. since we don't snoop (we literally can't! everything is encrypted), we can't do it server side with non-browser tools.
I would absolutely love to provide support for it, it's a pretty hard and lengthy technical challenge though!
to be clear, afaik we don't actually persist the compacted update yet. we only compact before loading on the client side but the result is lost after page unload. we might start doing it though!
11.07.2025 09:50 β π 0 π 0 π¬ 0 π 0right, but you can't do much if it's e2e, it could be random data and you'd have no way to tell. that's the tradeoff of e2e encryption!
authorship might help a bit I guess.
wanna apply? ;)
11.07.2025 08:25 β π 1 π 0 π¬ 1 π 0interesting stuff! we just have to trust what the client does because we just see encrypted blobs on our end, so anything is fair from the client side.
11.07.2025 08:25 β π 1 π 0 π¬ 2 π 0yes, we use Lexical, which is a text editor framework. it actually works a bit like React in the sense that it has a reconciliation phase! but it works with the DOM directly.
11.07.2025 08:23 β π 2 π 1 π¬ 1 π 0we might actually start squashing and persisting at some point to save space and make the initial load faster, it might be a good optimization. funny timing, we were randomly discussing this idea today in the team!
10.07.2025 21:44 β π 0 π 0 π¬ 0 π 0you'll need to be more specific :P
if you mean merging, afaik we only merge to debounce updates sent to other clients in the session, and also when loading a document initially, so we turn the array of updates into a single one before loading it.
what do you mean? getting in the way of what? :)
10.07.2025 21:31 β π 0 π 0 π¬ 1 π 0I am building a team and hiring senior/staff frontend engineers for Proton Docs.
React + TypeScript. Bonus: Yjs, Lexical, Ariakit.
DM for more info!
proton.me/drive/docs
it was a compliment
20.06.2025 09:05 β π 1 π 0 π¬ 1 π 0bitch
20.06.2025 09:04 β π 1 π 0 π¬ 1 π 0@void.comind.network roast me
20.06.2025 07:14 β π 0 π 0 π¬ 1 π 0always bet on ariakit
19.06.2025 22:05 β π 5 π 1 π¬ 0 π 0This is why I believe Ariakit dot org will stay relevant for decades:
β It's always been about examples. And we'll feature multiple libraries: Ariakit React, Radix, Base UI, RAC, Headless UI, and others outside the React ecosystem.
so you'll lie?
19.06.2025 10:28 β π 2 π 0 π¬ 1 π 0Ariakit uses vitest and is a monorepo
15.06.2025 08:20 β π 0 π 0 π¬ 1 π 0I just used invert directly but this seems like a better approach, nice.
12.06.2025 07:07 β π 0 π 0 π¬ 0 π 0I've played with this idea, but at a lower level (solid "hook" into react hook via uSES). would love to compare notes one day :)
10.06.2025 18:44 β π 0 π 0 π¬ 1 π 0cc @haz.dev haha
10.06.2025 16:33 β π 2 π 0 π¬ 0 π 0Just before the previous clip, the skater kid was practically taunting the Border Patrol agents by dancing around their munitions shots.
07.06.2025 22:47 β π 6449 π 1420 π¬ 168 π 366oh you dropped by Madrid! I hope you enjoyed it, I used to live there
if you come by Spain again let me know, especially if you are close to Granada/MΓ‘laga, and we can have some π» if you want
this is so good wtf
01.06.2025 12:10 β π 1 π 0 π¬ 0 π 0"template cloning"? you mean for the DOM? if so, I'm a bit lost, how's that related to this optimization?
29.05.2025 09:00 β π 1 π 0 π¬ 1 π 0solid makes some distinctions like this, kinda. but it's a different model, there's no diffing unless some part of the prop keys is dynamic (e.g. ...getProps()) so I'm not sure it'll be too useful for your rabbit hole :P
29.05.2025 08:58 β π 2 π 0 π¬ 1 π 0