18
Svelte 5 migration (self.photon)
submitted 4 weeks ago* (last edited 3 weeks ago) by Xylight to c/photon

Photon uses Svelte.js as the main JS framework for the UI. Photon uses Svelte 4 currently, but Svelte 5 was released and has a lot of benefits for the codebase. It's also a lot faster.

However, the paradigm for Svelte 5 is a lot different and almost the entirety of Photon might have to be rewritten.

Luckily, there's a migration tool that can do a lot of the work for me. However, I've still got to fix about 3,000 lines of code and 70 different files to work properly with Svelte 5. There's also gonna be a lot of hidden bugs I'll need to fix.

Because of this, I won't work on any new features for the next month or so, so that I can get this as done as fast as possible.

Generally you won't notice much other than slight behavior changes due to minor code structure changes, or maybe a bug or two.

Once I'm finished, I'll make another announcement and you might notice photon feeling a bit faster!

Once it's been confirmed stable I'll release docker images.

You can see my progress here

Other notes

Browser support drops

Very old browsers probably might break. I'm talking Internet Explorer (although I'm pretty sure that was already broken. I don't care if Photon doesn't work on IE.)

you are viewing a single comment's thread
view the rest of the comments
[-] poVoq@slrpnk.net 3 points 3 weeks ago

So the original plan to have a stable version on Svelte 4 was scrapped?

I am not against this, if Svelte5 brings a lot of improvements and maintaining an old branch is not worth the trouble, but it does effect our plans to switch to Photon as the main UI in the short term.

[-] Xylight 2 points 3 weeks ago* (last edited 3 weeks ago)

The app will essentially be the same thing, with a different library. I don't think there's a need to keep an old branch since I'm just migrating the app, not rewriting.

this post was submitted on 25 Oct 2024
18 points (100.0% liked)

Photon

281 readers
1 users here now

Photon for Lemmy

A client for the fediverse designed to be intuitive, fast, and beautiful.

Share your themes, ask questions, report bugs, or check on the latest updates here!

You can contact the dev at @Xylight@lemdro.id.

Rules

  1. Posts must be related to Photon in any way
  2. Don't be mean
  3. If your post is a bug report, please preface the title with [solved] if it's been fixed.

founded 11 months ago
MODERATORS