Website, community, Github

I’ve been working on an alternative web UI for Lemmy for a couple weeks now and it’s got enough features I wanted to share it. I love that somehow people have found it despite me never having posted online about it until now (until a couple days ago it was called sx-lemmy, sx being an abbreviation of my username) so you might have seen it in a list already.

Alexandrite is a (for the moment) desktop-first Lemmy interface, I primarily use Lemmy on my computer and I wanted a more convenient way to view posts and comments without juggling tabs or losing my place in the feed (with infinite scrolling). It’s still very much in beta, and I have a lot of work to do still, but it’s got most of the basic features.

You can view a post and comments in an overlay without losing where you scrolled to:

A non-exhaustive list of things you can do:

  • view home/community/user/communities feeds
  • post/comment
  • subscribe to communities
  • vote
  • save posts
  • search
  • inbox stuff

Noteworthy missing features:

  • reporting
  • blocking users/communities
  • mod tools
  • image uploading
  • automatic linkifying of urls/communities/users in comments/posts

For those who care, it’s all Sveltekit which is a dream to work with. Alexandrite is the name of the kind of gem in my wife’s wedding ring, it looks cool and changes color in the light.

7 points

Don’t worry I am crawling Github for potential new Lemmy apps, so your project was added a while ago.

Nice story behind the name, and great work with the app!

permalink
report
reply
3 points

That’s what I figured, I was just really surprised to see someone made an app with the same name as me, and then realized it was me.

permalink
report
parent
reply
5 points

I love having alternative desktop-first interfaces! Really appreciate you putting the time in to make this.

A couple hopefully constructive thoughts:
I find the text a little bit hard to read. It’s like the text is lightly purple on top of being on a purple background. Maybe one gets used to this over time.
Why the decision to not show profile pictures and community icons without hovering over them? It makes it much easier for me to identify what community content is coming from at a glance when those are present.

permalink
report
reply
1 point

Thanks!

Which text are you referring to? The normal text color is very slightly tinted purple but still has a pretty solid contrast ratio. Or are you talking about the text color on posts you’ve viewed already? I know certain kinds of screens don’t render color very accurately, maybe I’ll have to try it out on some other monitors around the house.

I thought having images big enough to recognize looked messy to me the way it’s done on the official Lemmy UI (at least on 0.17.4) and I hadn’t really tried making it look good. I know what you mean though, I might try showing the images (but at about the same height as the text) and see how that looks.

permalink
report
parent
reply
2 points

There are now images next to users/communities on posts, let me know what you think.

permalink
report
parent
reply
2 points

Great improvement in my opinion, thanks for the quick turnaround!

permalink
report
parent
reply
1 point

I like it too, great suggestion!

permalink
report
parent
reply
4 points
*

Oh this looks great! I’d love to host this alongside my instance.

I already do with WefWef - https://app.thelemmy.club

Maybe something like desktop.thelemmy.club

Is all the action client side?

permalink
report
reply
4 points

Thanks!

See my other comment about self hosting, as it’s probably not super easy right now.

The site uses Sveltekit and so far every interaction with Lemmy happens server side, so it’s probably not as easy to host as WefWef. I got partway through implementing image uploading yesterday until I hit a bug (fix just got merged today!) that prevented that, but image uploading is going to happen client side so it doesn’t cause extra server load.

permalink
report
parent
reply
2 points

so far every interaction… happens server side

Well that’s not ideal, both resource wise and the fact that this would cause you to run into rate limiting issues very fast

permalink
report
parent
reply
1 point

Ahh, I hadn’t considered the rate limiting stuff, great point. I will probably move things to the client at some point in the near future, so it’s easier for me to host too. Right now it’s using Cloudflare Pages and so far my usage today is well within the free tier limits, but hosting it as a static site elsewhere would be more easily scalable.

permalink
report
parent
reply
2 points

Hey, just wanted to let you know I just updated the site to do everything client side. Haven’t done anything yet about the self hosting instructions though, but thought I’d update you.

permalink
report
parent
reply
2 points

Another random reply to an old comment! I’ve got a branch out for self hosting Alexandrite if you happened to be interested in trying it out at all, more info on this post.

permalink
report
parent
reply
10 points

Great work! Looks beautiful :)

I have two questions:

  1. If I login on your site, where does username/password get stored? Local Storage?
  2. Can I clone the repo and run it locally on my machine? If so, how? I’m not familiar with Svelte.
permalink
report
reply
6 points

Thanks!

The username/password are just used once to login and get an auth token and that auth token is stored in a cookie. The username is also stored in a cookie, but the password is not. Here’s the login code

Yes you can! However the production version currently uses Sveltekit’s adapter-auto which just runs on various cloud platforms, so it might not be that easy to self host without changes. You can run the dev version of the site by cloning it, running npm install and npm run dev and viewing it at http://localhost:5173/ but that won’t be as optimized so your page load would be slower.

If you want to self host, would a docker image make it easier?

permalink
report
parent
reply
3 points

Thanks for the reply :)

Docker would be good for some people I would guess, but I’m quite happy to clone the dev site and use npm - thanks again :)

permalink
report
parent
reply
5 points

Been using it and I love it. Endless scrolling is something I needed. A few things needed options to toggle nsfw, to blur/unblur nsfw thumbnails, also general options for things like show read posts.

permalink
report
reply
3 points

Glad you like it! Yes, I need to add some settings for stuff like that, it’s on my todo list!

What do you mean by “show read posts”?

permalink
report
parent
reply
3 points

Show/hide read posts. Currently opening in overlay marks it as read so if you refresh it would/not hide with the option.

permalink
report
parent
reply

Lemmy Apps

!lemmyapps@lemmy.world

Create post

A home for discussion of Lemmy apps and tools for all platforms.

RULES:

  • No spamming
  • Be nice and have fun
  • Follow the general lemmy.world rules

An extensive list of Lemmy apps is available here:

LemmyApps.com

or lemmyapps.netlify.app


Visit our partner Communities!

Lemmy Plugins and Userscripts is a great place to enhance the Lemmy browsing experience. !plugins@sh.itjust.works

Lemmy Integrations is a community about all integrations with the lemmy API. Bots, Scripts, New Apps, etc. !lemmy_integrations@lemmy.dbzer0.com

Lemmy Bots and Tools is a place to discuss and show off bots, tools, front ends, etc. you’re making that relate to lemmy. !lemmy_dev@programming.dev

Lemmy App Development is a place for Lemmy builders to chat about building apps, clients, tools and bots for the Lemmy platform. !lemmydev@lemm.ee

Community stats

  • 255

    Monthly active users

  • 248

    Posts

  • 2.6K

    Comments

Community moderators