this post was submitted on 13 Jul 2025
31 points (100.0% liked)

Photon

839 readers
5 users here now

Photon for Lemmy

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

This community is a place to ask questions, report bugs, check on the latest updates, or share your experiences with Photon!

You can contact me at @[email protected].

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 2 years ago
MODERATORS
31
Photon v2.0.0 (use.phtn.app)
submitted 3 days ago* (last edited 2 days ago) by [email protected] to c/[email protected]
 

This is a very big release since v1.31.4. If you've used phtn.app, you won't notice a difference, since that runs on the latest commit.

TL;DR

  • Photon has been completely rewritten to use Svelte 5
  • This brings significant performance improvements
  • The UX has been changed to fit Photon's philosophy more closely
  • Many issues have been resolved and bugs fixed
  • 60% of changes are under the hood, but there's many visible ones too

What you'll notice

Snappier performance

  • Svelte 5 optimizes a lot of the reactive parts of the app
  • I've also spent a lot of time on a new virtualizer, which runs a lot faster

Design changes

  • While the overall layout is relatively the same, I've reworked a lot of pages to fall more in line with my design philosophy.
  • The design across (most) pages is much more consistent
  • There's a new default theme
  • Compact mode is now the default (if you've used photon before, this will not affect your setting)
  • Comment layout is slightly different and more intuitive
  • Modals now create a backstack so you can press the back button on your browser

New features and options

  • More moderation features
    • Quickly view users'/submissions' moderation logs
    • View the users' votes n a post
    • Grouped reports for many reports on the same post
      • you can resolve many at once
  • Options for more granular control over how links work in posts
  • Option to reverse the action row
  • Option to use absolute timestamps
  • lemmy language tagging support
  • Command palette now has contextual navigation options
  • Contextual warnings for certain actions (like missing languages in posts)
  • Messages page has been overhauled with markdown, contextual actions, etc
  • Better view and options for modlog page
  • Donation dialog as Lemmy requested

Optimizations

  • Uses CSS animations more often which are faster
  • Uses svelte context API to reduce prop drilling
  • Navbar uses CSS rather than JS for positioning
  • Uses optimized svelte $state rather than stores

Languages

Thanks to the community making translations on the Weblate, Photon has support for 18 languages!

  • English (100%)
  • Hebrew (58%)
  • Arabic (33%) (fxomt)
  • Bulgarian (72%) (salif)
  • Chinese (Simplified) (91%) (qiancsf, CDN, binary3141)
  • Chinese (Traditional) (21%) (binary3141)
  • Dutch (81%) (qaz)
  • Estonian (24%) (pewgar)
  • Finnish (94%) (sevon)
  • French (87%) (Blisterexe)
  • German (64%) (poVoq, Tywele)
  • Hungarian (55%) (myedition8)
  • Japanese (84%) (Rentlar)
  • Polish (83%) (gapetto)
  • Portuguese (78%) (tmpod)
  • Russian (83%) (WerySkok, mudkip)
  • Spanish (81%) (acidrums4)
  • Turkish (91%) (ikanat)

In the future

  • Piefed support is targeting v2.2.0
    • With the way it is being written, Mastodon support may as well come sometime around v3.0.0

There's a lot more in this release, as well as more to come. I'm trying to make Photon closer to its design philosophy, which can be summarized as:

It should not take more than 3 seconds to identify an action you wish to perform within a given container or page.

This covers a lot of reasons why I design stuff the way I do, for example, you'll never find more than 5 buttons (minus links) in a single container. Additionally, specific types of actions will usually look different, like primary actions on a page versus sub actions.

I hope you enjoy this release!

Full Changelog: https://github.com/Xyphyn/photon/compare/v1.31.4...v2.0.0

top 14 comments
sorted by: hot top controversial new old
[–] db0 3 points 22 hours ago (2 children)

Is there any chance I could convince you to support fediseer (i.e. display remote instance reputation from your own instance) and threativore user flairs?

[–] [email protected] 1 points 13 hours ago (1 children)

I generally try to make photon depend as little as possible on external APIs, especially specific ones.

However, I was thinking of a system to let instance admins choose for themselves if they want their hosting of photon to have it, perhaps through a "plugin" system. I could add a threativore/fediseer plugin that you could specify configuration to.

I probably wouldn't add it on my phtn.app, but I can add "plugins" so that you could use it on lemmy.dbzer0.com.

[–] db0 1 points 10 hours ago

Being able to hook some sort of plugin system would be perfectly fine with me. I can't develop it myself though >_< But if you would have a fediseer plugin and a threativore plugin and one just provides some necessary variables, I would totally use them.

[–] [email protected] 2 points 21 hours ago (1 children)

@db0 @Xylight has any client app added support for these yet? Would love to see what that would look like in action

[–] db0 3 points 21 hours ago

tesseract had support for fediseer (although not as visible as I would have liked). Nothing has added yet support for threativore flairs.

[–] fxomt 2 points 2 days ago (1 children)

Thank you! I know youve already implemented most of my suggestions (votes,revamped inbox) etc, and I hate to be pushy, but;

It would be amazing to have registration application templates. Thats the only thing I use for tesseract now (since you've implemented most of what I need)

And two small bugs I found, no pressure:

You can't set the default modlog view despite there being "default" as an option in the Modlog page, but only previews as lists.

In the Arabic version, the RTL switch is broken unlike Hebrew (they both work the exact same, not sure why it's like that)

Anyways, those last two are very small and don't matter much; this update is amazing, Thank you!

We've updated https://p.lemmy.dbzer0.com/ to the latest version

[–] [email protected] 3 points 2 days ago (1 children)

I'm still updating this daily, I'll get that in there soon. I only made the "stable" 2.0 release now because I wanted to get all the instances using the ancient v1.34 up to date

[–] fxomt 2 points 2 days ago

Thanks, at least we could finally update our photon lol

[–] [email protected] 2 points 3 days ago

Our instance on https://photon.slrpnk.net/ was just updated 👍

[–] [email protected] 2 points 3 days ago

Thanks, Photon is the best site on the web!

[–] Tywele 1 points 2 days ago* (last edited 2 days ago) (2 children)

Why does my contribution to translating to German always get seemingly forgotten?

[–] Blaze 2 points 1 day ago

Thank you for your work !

[–] [email protected] 3 points 2 days ago (1 children)

I'm really sorry about that, I used a different script to generate the translation reports for this release note than the credits page in the app. The first one only took the top 1 translator, and then I filled what I thought I missed.

I edited the post. Translation is a great dedication of time and I apologize for not recognizing the time you put.

[–] Tywele 1 points 2 days ago