First stable release!

GitHub link

Photon is now stable enough for people to be able to use. It’s a sleek Lemmy client where basically the only selling point is that it looks decent

I’d recommend logging in with an alt account for now, as I might freak something up that causes your credentials to leak. That’s basically impossible to have happen, but better safe than sorry.

What features should be priority right now?

  • @ashtefere
    link
    English
    11 year ago

    I think of you look at real world numbers of people that dont’t use JavaScript, you will find it vanishingly small. It’s not really a concern for most people any more. It’s not some big boogey man that is the root cause of all evil, it’s just a tool that has been misused by advertisers. Luckily, with lemmy, we don’t have that problem.

    • Xylight (Photon dev)OPM
      link
      fedilink
      English
      11 year ago

      If I can easily avoid using JS for a task, I prefer that, since it typically improves performance and compatibility as well. However I’m starting to lean away, comments are an example. They require JS to be fetched to speed up post page load.

      • @ashtefere
        link
        English
        11 year ago

        Not using JS does not “typically improve performance” unless you are using a thousand libraries and don’t know how to code.

        A good example is thus: I see a post and want to open it. Two things can happen:

        1. No Js so a whole new page opens, renders, dom tree is generated, layout is thrashed as css comes in, all requests to all services are made (again) to load a whole new page.

        2. Use Js to just load the new content in a model, styling and layout has already been loaded with the initial page load.

        Your app is a primary example of how not using JS actually slows things down. To open a post needs a whole new page, and each time I’m finished I need to load the whole app again to go back

        Sorry, but what you are doing is breaking the user experience entirely and making it worse to fight a battle that was lost 10 years ago.

        • Xylight (Photon dev)OPM
          link
          fedilink
          English
          1
          edit-2
          1 year ago

          JS is used quite heavily. The page isn’t reloaded, see that white progress bar at the top? That’s it fetching the necessary data and having the client swap out the DOM. That’s a feature of SvelteKit.

          I unfortunately can’t really find a way to fix the back cache issue. Ironically, disabling JS on my client fixes back cache.

          Most of the slowness comes from Lemmy itself. Since the CORS headers are broken, I need to route everything through a proxy, massively slowing things down. A modal based approach convolutes things more since instead of a +page.ts where data is fetched separately I have to have a weird modal and a svelte store to show the current post, it just gets really annoying.

          I’ll try to make it so that it passes the data to the new route to instantly show the post, and hopefully fix back cache later.

          Is Imagi what you’re envisioning?

          • @ashtefere
            link
            English
            11 year ago

            The Imagi behaviour is a lot better for user flow.

            I didn’t know you were using svelte for this. I guess it explains the weirdness you mention. Personally not a fan myself, as I can across similar issues. My “new hotness” stack or choice became solid and then qwik, as there was less “magic” and more possibility to take control when things get fucky.

            • Xylight (Photon dev)OPM
              link
              fedilink
              English
              1
              edit-2
              1 year ago

              Svelte is NOT Sveltekit. Very different purposes. The reason I use Sveltekit is because I love Svelte. I could use another server if I wanted to.

              Most meta frameworks (Solid Start, Qwik City) use this rendering method as well.

              How long is it taking for the post pages to load for you? It takes me about 0.5 - 1 second for the page to load with the client renderer.