Self host Blorp, your personal Lemmy/PieFed frontend
from moseschrute@lemmy.world to selfhosted@lemmy.world on 18 Jul 15:20
https://lemmy.world/post/33144375

I’ve been working on a Threadiverse frontend for almost a year called Blorp. Originally it was Lemmy only, but now it also includes PieFed. (source code) (try web version)

I just Dockerized the frontend and started publishing the Docker image, and I would love your feedback!

# pull the latest Blorp image
docker pull christianjuth/blorp:latest

# run it on port 8080 (host → container), passing any runtime env‑vars you need
docker run -d \
  --name blorp \
  -p 8080:80 \
  -e REACT_APP_DEFAULT_INSTANCE="https://lemmy.zip/" \ # BUT without the trailing slash!
  -e REACT_APP_NAME="Blorp" \
  -e REACT_APP_LOCK_TO_DEFAULT_INSTANCE="false" \
  christianjuth/blorp:latest

Edit: I cannot get the trailing slash in https://lemmy.zip/ to go away, but make sure you exclude it. Idk what sorcery is going on with Lemmy, but it seems impossible to link a domain without a trailing slash. I’ll make the docker image more forgiving in the next update.

#selfhosted

threaded - newest

moseschrute@lemmy.world on 18 Jul 15:41 next collapse

I was today years old when I learned Lemmy doesn’t let you have links without a trailing slash

POST https://lemmy.ml/api/v3/comment <img alt="" src="https://lemmy.world/pictrs/image/658597e9-7b19-4b29-853b-019178f50333.png"> <img alt="" src="https://lemmy.world/pictrs/image/95249ac9-6c9b-456b-b6c3-b56a03481356.png">

moseschrute@piefed.social on 18 Jul 15:48 next collapse

It get's even weirder. I'm now writing this from PieFed. If you view this comment from PieFed it won't have the trailing slash, but from Lemmy it will.
https://piefed.social

cecilkorik@lemmy.ca on 18 Jul 17:16 collapse

Very interesting I wonder what happens if I post both trailing and non-trailing options, do they both get canonized into the same format?

piefed.ca – has a trailing slash piefed.ca – does not

Thank you for having me along on this journey. I don’t really know where it’s leading, but maybe it’s about the weird software behaviors we discover on the way.

cecilkorik@piefed.ca on 18 Jul 17:18 collapse

And posting from piefed, is the result the same?

https://piefed.ca/ -- has a trailing slash
https://piefed.ca -- does not

cecilkorik@lemmy.ca on 18 Jul 17:21 collapse

Yup, they all have trailing slashes when viewed on Lemmy, and 3/4 have trailing slashes when viewed on piefed. So only piefed actually respects what was originally typed. Lemmy adds a trailing slash when you’re adding the comment, and also adds a trailing slash when reading a comment posted that doesn’t originally have a trailing slash. Intriguing (and slightly annoying).

cecilkorik@piefed.ca on 18 Jul 17:30 collapse

On a similar but unrelated note, Lemmy also displays the two-hyphens as an em-dash, but unlike the trailing slashes, it does not encode that into the comment, so on piefed you still see the two-hyphens in both comments.

Fun!

DesolateMood@lemmy.zip on 18 Jul 17:41 next collapse

I see two separate dashes in voyager

moseschrute@lemmy.world on 18 Jul 17:46 collapse

Edit: I misread your comment. I see you pointed out that it doesn’t encode the em dash into the comment itself.

I think that might just be how Lemmy’s default frontend renders markdown. The trailing slash thing happens at the API level. But a quick test shows submitting a comment with two dashes sends back a comment with two dashes.

POST https://lemmy.ml/api/v3/comment

<img alt="" src="https://lemmy.world/pictrs/image/1cdd3c48-33b3-4471-8253-c5c33f3861b1.png"> <img alt="" src="https://lemmy.world/pictrs/image/b426ff16-df5f-4c39-9544-c92785347127.png">

Zwiebel@feddit.org on 18 Jul 20:31 collapse

Aren’t trailing slashes completely useless?

shnizmuffin@lemmy.inbutts.lol on 18 Jul 22:30 next collapse

No, not at all.

They are a shorthand for “give me the index of this directory” rather than “give me the first file you find named this.” In some configurations, the presence of absence of a trailing slash dramatically reduces the amount of computation an HTTP server must execute before responding to the request.

moseschrute@lemmy.world on 19 Jul 00:45 collapse

Unpkg.com shows different results based on trailing /

MysteriousSophon21@lemmy.world on 19 Jul 18:36 collapse

Trailing slashes actually serve an important purpose in URLs - they indicate you’re requesting a directory rather than a file, which affects how servers route reqeusts and can impact caching, redirects, and SEO.

gonzo-rand19@moist.catsweat.com on 18 Jul 19:10 next collapse

Would you consider supporting Mbin in the future? I like Lemmy, but I've become used to Mbin (I was originally on /kbin) and I'm somewhat attached to my instance.

moseschrute@lemmy.world on 18 Jul 19:33 collapse

Yes! I think I might need Mbin to implement the resolve_object endpoint first. I don’t think they have that currently. Basically I need some way to look up posts by activity pub id. There’s also a strong possibility I won’t implement all of Mbin’s functionality. I might just implement the parts that are most similar to Lemmy. But if you’re looking for one app to login to Lemmy, PieFed, and Mbin, I would like to be that app.

gonzo-rand19@moist.catsweat.com on 18 Jul 19:44 collapse

I basically use Mbin as though it were Lemmy, so personally that would be fine. Thanks for the quick response.

Demigodrick@lemmy.zip on 18 Jul 19:24 next collapse

Have spun this up on blorp.lemmy.zip and blorp.piefed.zip :)

moseschrute@lemmy.world on 18 Jul 19:29 next collapse

Thank you! It’s so validating to see people actually host my project. I’m so grateful for all the hard work instance admins put in. Please don’t hesitate to open GitHub issues if you have feature requests or find bugs. Expect PieFed could break as they push breaking API changes, but I’ll try and resolve issues quickly.

3dcadmin@lemmy.relayeasy.com on 21 Jul 11:53 collapse

UK here so unless I change my country I can’t use it ;)

Demigodrick@lemmy.zip on 21 Jul 12:59 collapse

There’s only one solution - you’ll have to move countries 😉

3dcadmin@lemmy.relayeasy.com on 22 Jul 07:43 collapse

Damn the wife WILL be pissed

Cyberflunk@lemmy.world on 18 Jul 20:58 next collapse

No shade, but this looks like any other front end. Am i missing something?

moseschrute@lemmy.world on 19 Jul 00:42 collapse

Idk. There’s a lot of Lemmy clients and many of them are really good. When I started, Voyager didn’t have good support for larger screens, but I think that has changed. I do think I have the best account switching. Voyager will reset the current navigation when you change accounts. Any pages you have open will be cleared. Blorp does not do that. Blorp is also cross platform like Voyager.

But honestly if you prefer another app, you should use it! All the frontend devs are super cool!

lambalicious@lemmy.sdf.org on 18 Jul 21:10 next collapse

blorp

The Fediverse. Poob has it for you.

3dcadmin@lemmy.relayeasy.com on 19 Jul 07:51 collapse

Now this I like, just because I have plenty of people who really aren’t techy enough and dislike a lot about the fediverse… I know it’s not for everyone but having a simple front end works for loads! Good work here - I like it, I like it a lot

moseschrute@lemmy.world on 19 Jul 12:37 collapse

That you! Idk how to explain the fediverse to my mainstream social media friends, but I think a good step 1 is giving them an intuitive front end.

I would love to eventually onboard people to Lemmy and PieFed through Blorp, but that’s a whole other challenge. Idk how to explain the fediverse to people. In a perfect world, I think people who stumbled across Blorp would figure it out with no prior Fediverse knowledge. Idk how to get there.