cross-posted from: https://lemmy.ml/post/1465740

What is Lemmy?

Lemmy is a self-hosted social link aggregation and discussion platform. It is completely free and open, and not controlled by any company. This means that there is no advertising, tracking, or secret algorithms. Content is organized into communities, so it is easy to subscribe to topics that you are interested in, and ignore others. Voting is used to bring the most interesting items to the top.

Major Changes

HTTP API instead of Websocket

Until now Lemmy-UI used websocket for all API requests. This has many disadvantages, like making the code harder to maintain, and causing live updates to the site which many users dislike. Most importantly, it requires keeping a connection open between server and client at all times, which causes increased load and makes scaling difficult. That’s why we decided to rip out websocket entirely, and switch to HTTP instead. This change was made much more urgent by the sudden influx of new users. @CannotSleep420 and @dessalines have been working hard for the past weeks to implement this change in lemmy-ui.

HTTP on its own is already more lightweight than websocket. Additionally it also allows for caching of server responses which can decrease load on the database. Here is an experimental nginx config which enables response caching. Note that Lemmy doesn’t send any cache-control headers yet, so there is a chance that private data gets cached and served to other users. Test carefully and use at your own risk.

Two-Factor Authentication

New support for two-factor authentication. Use an app like andOTP or Authenticator Pro to store a secret for your account. This secret needs to be entered every time you login. It ensures that an attacker can’t access your account with the password alone.

Custom Emojis

Instance admins can add different images as emojis which can be referenced by users when posting.

Other changes

Progressive Web App

Lemmy’s web client can now be installed on browsers that support PWAs, both on desktop and mobile. It will use an instance’s icon and name for the app if they are set, making it look like a given instance is an app.

Note for desktop Firefox users: the desktop version of Firefox does not have built in support for PWAs. If you would like to use a Lemmy instance as a PWA, use use this extension.

Error Pages

Lemmy’s web client now has error pages that include resources to use if the problem persists. This should be much less jarring for users than displaying a white screen with the text “404 error message here”.

Route Changes

Pages that took arguments in the route now take query parameters instead. For example, a link to lemmy.ml’s home page with a few options used to look like this:

https://lemmy.ml/home/data_type/Post/listing_type/All/sort/Active/page/1

The new route would look like this:

https://lemmy.ml?listingType=All

Note that you now only have to specify parameters you want instead of all of them.

Searchable select redesign

The searchable selects, such as those used on the search page, have a new look and feel. No more inexplicable green selects when using the lightly themes!

Share button

Posts on the web client now have a share button on supported browsers. This can be used to share posts to other applications quickly and easily.

Lemmy-UI Overall look and feel

lemmy-ui is now upgraded to bootstrap 5, and every component is now much cleaner.

Special thanks to sleepless, alectrocute, jsit, and many others for their great work on improving and re-organizing lemmy-ui.

Database optimizations

Special thanks to johanndt, for suggesting improvements to Lemmy’s database queries. Some of these suggestions have already been implemented, and more are on the way.

Query speed is Lemmy’s main performance bottleneck, so we really appreciate any help database experts can provide.

Captchas

Captchas are not available in this version, as they need to be reimplemented in a different way. They will be back in 0.18.1, so wait with upgrading if you rely on them.

Upgrade instructions

Follow the upgrade instructions for ansible or docker.

If you need help with the upgrade, you can ask in our support forum or on the Matrix Chat.

Support development

We (@dessalines and @nutomic) have been working full-time on Lemmy for almost three years. This is largely thanks to support from NLnet foundation.

If you like using Lemmy, and want to make sure that we will always be available to work full time building it, consider donating to support its development. No one likes recurring donations, but they’ve proven to be the only way that open-source software like Lemmy can stay independent and alive.

  • ManibusanOP
    link
    English
    21 year ago

    My thoughts:

    HTTP API Instead of Websocket

    Very cool, definitely been getting hit with a lot of posts at the same time.

    Two-Factor Authentication

    This is great.

    Custom Emojis

    For a sports instance, this is really cool. I’m not artistic but I know we have some users who are.

    Error Pages

    This should help with users on other instances being able to get routed to the right community here. 🤞

    Lemmy-UI Overall look and feel

    Nothing crazy, but I like the new UI.

    Database optimizations

    Always welcome.

    Captchas

    I don’t remember if we have these set up, but hopefully 0.18.1 rolls out soon so we can get these set up. I don’t think we have a bot problem but it will be unfortunate if we get one.

    I’m not sure when/if @headie_sage will be implementing this update but these changes sound very cool. Also, thank you for everything you’ve done with this instance and giving all of us a platform to discuss sports!

    • @headie_sageMA
      link
      English
      21 year ago

      thank you for everything you’ve done with this instance and giving all of us a platform to discuss sports!

      You’re welcome!

      RE: when I plan on rolling 0.18.0 out. I have been following the Admin Matrix chat for the better part of the afternoon and it looks like many instances have had some trouble upgrading. Not sure what that’s related to so I’ve been holding off for now.

      I am a bit concerned about the lack of captcha – we do have it enabled – and am following the discussions on GH regarding it’s re-implementation. I am debating between upgrading now (realistically tonight) and waiting for 0.18.1.

      Considering fanaticus is more of a content instance than a user-home-instance and the new version has a ton of QoL improvements, it may make more sense for us to upgrade to 0.18.0 now and just limit sign ups to email verification and sign up form.

      I’d appreciate any feedback from the community though.

      • ManibusanOP
        link
        English
        21 year ago

        Considering fanaticus is more of a content instance than a user-home-instance and the new version has a ton of QoL improvements, it may make more sense for us to upgrade to 0.18.0 now and just limit sign ups to email verification and sign up form.

        I agree with this assessment. I have read about issues on some instances but I’m all for upgrading and experiencing the QoL improvements.

        Considering fanaticus is more of a content instance than a user-home-instance

        I take that personally (only because this is my user-home-instance).

        • @headie_sageMA
          link
          English
          21 year ago

          I take that personally (only because this is my user-home-instance).

          🤣 sorry bud! We appreciate that you made this your home

          • ManibusanOP
            link
            English
            21 year ago

            I didn’t know it at the time, but I wouldn’t have been able to make all those NFL and college communities here if I had signed up somewhere else! 😂 I’m mostly on Lemmy for sports talk anyways so it’s a natural fit. There’s no other instance I would rather call home.

            • @headie_sageMA
              link
              English
              21 year ago

              Hopefully more users follow suit!

      • @ericjmorey
        link
        English
        11 year ago

        At this point 0.18.1 should be ready soon.

        • @headie_sageMA
          link
          English
          21 year ago

          I’m looking at it now! I’m going to roll out the 0.18.0 update tonight.

  • @headie_sageMA
    link
    English
    21 year ago

    Haha beat me to it! I’ve been waiting for lemmy.ml to come back online in order to cross-post this.

    • ManibusanOP
      link
      English
      21 year ago

      Yeah, I was like “Usually @headie_sage is already on stuff like this but I’ll take my opportunity to beat him to it” 😂