Email or username:

Password:

Forgot your password?
1,576 posts total
Alex Gleason
Soapbox is now built with Vite instead of Webpack.

Devserver takes 10 seconds instead of 60 seconds.
Build takes 20 seconds instead of 60 seconds.
CI takes 10 minutes instead of 20 minutes.

Major win. https://gitlab.com/soapbox-pub/soapbox/-/merge_requests/2666
Soapbox is now built with Vite instead of Webpack.

Devserver takes 10 seconds instead of 60 seconds.
Build takes 20 seconds instead of 60 seconds.
Alex Gleason
Actually, Bun + Vite does work. We're doing this. Soapbox on Bun + Vite. Fuck it ship it!
Alex Gleason
Today's mission: merge Soapbox building with Vite, finally. This will make the build 2x faster and the devserver 6x faster.

Thanks everyone who tried the Ditto demo and reported bugs. They are actually bugs in Soapbox rather than in Ditto for the most part, with my half-assed Nostr implementation. But before I hack on Soapbox again I want to make the developer experience more tolerable.
Alex Gleason
I also tried keeping Webpack and switching to Bun with no other changes. This made the build 10s slower. However it made installing packages like 100x faster (not an exaggeration).

The ultimate gamer move will be to use Bun + Vite down the line, but currently Bun does not support Vite's hot reloading and Vite does not use Bun's streamlined bundler yet. However, it is planned.
Alex Gleason
Making pancakes this morning and got this hood classic stuck in my head. https://youtu.be/tlpcXYkJa9I?si=B_2ZfQLIxLpMb1jn
Alex Gleason
There's a "Dark Wholesome" side of the Fediverse that I love.
Alex Gleason
This is the most fun file in Ditto: the pipeline. Events we encounter, for any reason, get pushed through the pipeline. Then the pipeline decides where to delegate them. Events from the relay, events created through Mastodon API. and events queried through the relay pool simply get pushed through the pipeline without any other state. Then subscriptions in various parts of the app receive the events they want.

It's a Pleoma-inspired design. I'm taking some of the best things I've learned over the years to apply them here.

https://gitlab.com/soapbox-pub/ditto/-/blob/develop/src/pipeline.ts
This is the most fun file in Ditto: the pipeline. Events we encounter, for any reason, get pushed through the pipeline. Then the pipeline decides where to delegate them. Events from the relay, events created through Mastodon API. and events queried through the relay pool simply get pushed through the pipeline without any other state. Then subscriptions in various parts of the app receive the events they want.
Alex Gleason
There are also some very stupid things I'm doing, such as hammering too many relays unnecessarily and not resolving events correctly.

Most of the problems with Ditto right now are actually in Soapbox, though. A lot of it not "just working" is that I didn't start adding real client support until yesterday.
Alex Gleason
Fellas, I am vegan for life. If I ever stop being vegan it means something is horribly wrong. If I accidentally eat a milk product I will induce vomiting.
Alex Gleason
Now that Ditto is a reality, I call upon @p to release Revolver.

I deployed my project in a half-finished state. It sucks, really, but it will get good fast, especially now that you guys are trying it and giving feedback. It takes bravery to do this, and now I want to see Pete be brave.

RT: https://gleasonator.com/objects/21080314-e06d-4c9b-919f-3ab692a48b7e
Now that Ditto is a reality, I call upon @p to release Revolver.

I deployed my project in a half-finished state. It sucks, really, but it will get good fast, especially now that you guys are trying it and giving feedback. It takes bravery to do this, and now I want to see Pete be brave.
Alex Gleason
Looks like Chrome has a remote code execution vulnerability. Aka viewing a particular image in the browser can give an attacker access to your whole computer. Upgrade now.

https://www.timesnownews.com/technology-science/update-now-critical-google-chrome-flaw-exploited-article-103597437
:niggy:

yes friend these bugs are common, but thankfully not exploitable alone anymore. a modern browser exploit chain requires at at least 3 vulnerabilities combined:

- Code execution (Browser)
- Information disclosure (Browser)
- Sandbox escape (OS/Kernel)

It appears this jewish israeli exploit chain was for iphone, so used ios-specific other components. their exploit chain would not work for other platforms thankfully

Alex Gleason
On this evening of September 11, I am pleased to announce that I have tagged a Ditto alpha1 release and deployed it to https://gleasonator.dev

Ditto LIVES. Here's what you need to know:

- It's Soapbox on Nostr.
- Ditto pretends to be a Mastodon server while using the Nostr protocol.
- You can use Mastodon apps other than Soapbox (but you need to obtain a Nostr private key first).
- ActivityPub is not supported yet, but it will be. It's part of what makes Ditto, Ditto.
- Ditto is about building communities on Nostr, similar to ActivityPub.
- Nostr uses private keys. There is still a lot of work to do in Soapbox to improve this experience.
- This is not optimized. Please excuse any slowness or glitches. If something isn't working, try refreshing the page. I will improve this.
- It's still a demo. This is just for poking around, so don't get too attached.

This is just the beginning. alpha1 is just BARELY usable. But I want to get the ball rolling. Things are going to change a lot in both Soapbox and Ditto. These things take time, but we will win. Thank you all for your patience, enthusiasm, and support!

Follow along with #ditto here: https://gitlab.com/soapbox-pub/ditto/-/issues

Enjoy!
On this evening of September 11, I am pleased to announce that I have tagged a Ditto alpha1 release and deployed it to https://gleasonator.dev

Ditto LIVES. Here's what you need to know:
Alex Gleason
I couldn't wait for Revolver any longer.
Alex Gleason
Well, my CPU is getting murdered. One moment.
Alex Gleason
Jesus, did that much really happen in the span of like an hour?
Alex Gleason
The fragile and childish users of Mastodon will finally be able to enter the soft embrace of a real world stuffed elephant to remind them of the cozy feeling they get inside whenever they #fediblock doing the dishes for the eighth day in a row.

RT: https://mastodon.social/users/Gargron/statuses/111043162103567515
Alex Gleason
IPFS is doing better at resolving files than I expected.
Alex Gleason
Bro I am going to personally kill Node.js
Alex Gleason
I'm switching this fucking project to Bun
Go Up