[-] silas@programming.dev 13 points 2 years ago

As developers, what can we do (or not do) to best support Lemmy’s vision and goals right now?

[-] silas@programming.dev 11 points 2 years ago

Real fix is in the comments

[-] silas@programming.dev 11 points 2 years ago

Thanks! At this point in time, it’s definitely the design and user-interface. I’m fine-tuning Lemmynade to look clean and feel smooth on every size of device, with touch-friendly gestures and micro-animations. It’s filled with sweeping community banners and colorful indicators to make it feel more alive.

The long-term goal is to be an all-in one website for powerful searching, dead-simple Lemmy onboarding, community discovery, realtime updates, shareable links, and great mod tools. But we need to kill off the bugs and polish things up first before we get there 🙂

[-] silas@programming.dev 13 points 2 years ago

I’m building !lemmynade@lemm.ee and can answer any questions. Each app and client handles differently, but for Lemmynade:

  1. You type in your instance, username/email, and password into Lemmynade and tap “Submit”
  2. After tapping submit, your username and password is sent to Lemmynade’s backend server to process securely (this is more secure than doing some of the next steps directly in your browser)
  3. Lemmynade’s backend server immediately verifies that your instance exists and that it’s a valid Lemmy instance (you don’t want to blindly send your password to some random server!)
  4. If the instance is a valid Lemmy instance, then your username and password is sent directly to your instance over an encrypted connection.
  5. If your username and password are valid, then your instance sends back a token (a bunch of random letters and numbers) to Lemmynade. This secure token can be used in place of your password so your actual password doesn’t have to be stored anywhere.
  6. Lemmynade then takes that token and saves it in in an http-only cookie on your own device. When it needs to authenticate or log in again, it uses this secure token to do it so you don’t have to keep typing in your password.

Throughout this process, nothing is stored, logged, or recorded anywhere. The only thing stored is the secure token, and that secure token is only saved on your own device. Lemmynade or anyone else cannot access your account unless they have access to your specific device.

There’s many more layers to this, but hopefully that explains the general idea. The main danger with the current method of authentication is that you are providing your raw password to a third party, meaning if someone wanted to be malicious it’s fairly easy to do.

A much better authentication method is called OAuth. With OAuth, you never give your password directly to the third party, so it’s far safer. A lot of us devs are pushing for this and hoping to see this down the road as it would give much more peace of mind to everyone. It’s only up from here!

[-] silas@programming.dev 13 points 2 years ago

We’ve had a few of these built on my planet too actually

[-] silas@programming.dev 12 points 2 years ago

Ah crap I got another account there, I guess I’m cheering from both lol

[-] silas@programming.dev 11 points 2 years ago

I love MonaLisa a lot. I’ve been using it for pretty much all monospace throughout my computer. It feels very fine-tuned and well thought out, and it’s very readable too.

[-] silas@programming.dev 14 points 2 years ago* (last edited 2 years ago)

It should work regardless, but Lemmy often requires an external community to be searched explicitly on an instance before it shows up and starts synchronizing content. I’d be curious if it works after searching for !main@lemmy.blahaj.zone (or whatever the community is)

[-] silas@programming.dev 11 points 2 years ago

That looks great, I’m just lurking here and have never built one myself but I bet it’s super rewarding!

[-] silas@programming.dev 13 points 2 years ago

I think it’s incredible, just needs some more love from users and developers to get it to a stable place. It truly feels like something we’ve all built together. I think the pros outweigh the cons by far

[-] silas@programming.dev 11 points 3 years ago

This is partially a problem with how Lemmy works at the moment. Ideally, all communities should be synchronized and shown on all instances/servers, as of now any new severs from other instances will only show up on your own instance after the first time someone from your instance subscribes. This means someone has to manually type in the url and subscribe to an external community from your own server/instance so that your own instance can “discover” that the community exists and add it to the list. Hopefully this gets better down the road—I’m sure it will—but in the meantime https://lemmyverse.net/communities is a great place to discover new communities.

12
submitted 3 years ago by silas@programming.dev to c/lemmydev@lemm.ee
15
submitted 3 years ago* (last edited 3 years ago) by silas@programming.dev to c/lemmydev@lemm.ee

I hope this is obvious, but I wanted to get it out there because of how important it is.

If your client allows user-entered Lemmy instances, ALWAYS verify that the instance is a valid Lemmy instance before sending credentials over. Otherwise, the user may have entered a url to an unknown server or site, and you will be sending their login credentials to a server that may be logging and storing the request or even intentionally trying to capture these credentials.

Instead, call getSite at the very least, or use a public list of verified servers before making the login request.

I would not be surprised if down the road malicious sites with similar domains to popular instances will be created to get login details of users who mis-typed their instance domain. It’s partially our responsibility to make sure our users are safe, so let’s keep this discussion going as we learn new ways to handle security concerns!

23

I like CMD + D to select the next identical selection, OPT + DOWN/UP to move the selections down or up a line, SHIFT + OPT + DOWN/UP to duplicate the selection, and CMD + / to turn the line into a comment. How bout you?

2
submitted 3 years ago by silas@programming.dev to c/lemmynade@lemm.ee

More progress is being made on Lemmynade—the refreshing, one-of-a-kind Lemmy client for the web! Here’s a few screenshots:

App development takes time, and the current focus is getting all basic functionality running smooth before adding extra features. Every Lemmy instance is different and performance varies a lot. Each feature needs to be tested thoroughly to minimize the amount of errors. Errors also must be be handled gracefully when they do happen on slower or overloaded instances so as to not scare people away :) As you can imagine, that's plenty to think about.

That said, we're getting closer to a public release each day. If you want to follow progress and get the alpha link when it drops, updates are being posted to r/lemmynade and this community here at !lemmynade@lemm.ee

Feel free to ask questions or share ideas in the meantime!

Cheers,

- silas

7

To stay tuned and get the link when it drops, follow at !lemmynade@lemm.ee. In the meantime, feel free to ask questions or share some features you hope to see!

1
submitted 3 years ago by silas@programming.dev to c/lemmynade@lemm.ee

To stay tuned and get the link when it drops, follow at !lemmynade@lemm.ee. In the meantime, feel free to ask questions or give suggestions!

3
submitted 3 years ago* (last edited 3 years ago) by silas@programming.dev to c/lemmydev@lemm.ee
58
submitted 3 years ago by silas@programming.dev to c/asklemmy@lemmy.ml

We’ve got a lot of Lemmy app options rolling out soon—it’s exciting!

What do you wish was better about the current way you browse Lemmy, and what features do you hope to have down the road?

3
submitted 3 years ago* (last edited 3 years ago) by silas@programming.dev to c/lemmynade@lemm.ee

With all the amazing apps and services everyone is building for Lemmy lately, I figured I might as well share a sneak-peek of mine too!

Lemmynade is a stunning web client for Lemmy with an emphasis on search engine indexability, great moderation tools, and a familiar pixel-perfect experience.

The goal with this project is to:

  • Publish a powerful, publicly-browsable, fully-indexable website where all Lemmy instances are accessible at any time. I’ll be using dynamic SEO, SSR, and smart caching on the edge to encourage search engines to index posts (and also make posts look good when people share them to other platforms).
  • Create a solid, familiar UX to make it easier for new users to transition from other social media platforms. Lets face it—we need a great user experience for Lemmy with infinite scrolling, beautiful post presentation, video support, and animated upvotes.
  • Prioritize community engagement and moderation tools. You can see it in the colors and the placement of everything—Lemmynade is about the users that make up this community. The goal is to make it simple and quick for you to post, comment, reply, and message other users in the Fediverse. Moderation tools will also get some love as well.
  • Eventually release Lemmynade iOS and Android apps. Hopefully, as Lemmynade grows, I’ll be able to release iOS and Android apps. This is not a guarantee and is dependent on the success of the web version and any interest from y’all.

As you can imagine, this is a huge project and will take some time to get to a usable and polished version 1.0. For now, subscribe to this community to follow along—I’ll post updates and more sneak-peeks along the way.

I’ll be sharing more screenshots in the coming weeks as well as a link to the public alpha for you all to try. Stay tuned, and feel free to ask any questions or share ideas!

Cheers,

- Silas

view more: ‹ prev next ›

silas

0 post score
0 comment score
joined 3 years ago
MODERATOR OF