this post was submitted on 03 Aug 2024
158 points (80.9% liked)

Fediverse

28726 readers
160 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy

founded 2 years ago
MODERATORS
 

cross-posted from: https://lemmy.ca/post/26211900

[Transphobia Warning] Nutomic’s Stance on Transgender People

you are viewing a single comment's thread
view the rest of the comments
[–] otl@hachyderm.io 24 points 4 months ago (3 children)

@xnx PieFed won’t have an app any time soon due to the way it’s implemented. It’s still awesome without a native app because it’s fast and doesn’t really need direct access to hardware to do its thing.

Tech detail: PieFed is a Python app using Flask and server-side rendered HTML templates. It is super fast as there’s no heavy Javascript framework being used. The maintainer has written about how PieFed is developed with poor internet connections in mind: https://piefed.social/post/6102

@fediverse

[–] db0@lemmy.dbzer0.com 10 points 4 months ago (1 children)

The only thing piefed needs for an app is a flask rest framework. It'd not hard

[–] xnx@slrpnk.net 4 points 4 months ago (2 children)

Any chance you will be able to help develop that?

[–] db0@lemmy.dbzer0.com 6 points 4 months ago

I could but sadly I've got my hands full with my other projects atm.

[–] GBU_28@lemm.ee 2 points 4 months ago (1 children)

Can you link to the GH issues?

[–] xnx@slrpnk.net 6 points 4 months ago

There is none yet. They use codeberg not github btw

Heres an issue on lemmy api compatibility. They got far enough so some Lemmy apps already sorta work but it hasnt been completed https://codeberg.org/rimu/pyfedi/issues/13#issuecomment-1814982

Heres an issue on allowing the website to be isntalled as a PWA but help is needed on the iOS front https://codeberg.org/rimu/pyfedi/issues/179

[–] skullgiver@popplesburger.hilciferous.nl 6 points 4 months ago (1 children)

How is the server performance of Piefed compared to Lemmy? Python isn't exactly known for its speedy web frameworks.

[–] otl@hachyderm.io 4 points 4 months ago

@skullgiver Good Q. Some thoughts... a standard Python, Flask, PostgreSQL app can handle hundreds of requests per second on a single machine. Any bottlenecks - Lemmy or PieFed - would probably not be at the language yet. For example, Lemmy's poor performance when I looked ~1 year ago came from a bizarre disregard for things like relational DB query optimisation, HTTP caching, and how the stock frontend lemmy-ui fetched data. Yet Lemmy is written in Rust which is known for speed.

@fediverse

[–] threelonmusketeers@sh.itjust.works 5 points 4 months ago* (last edited 4 months ago) (1 children)

PieFed won’t have an app any time soon due to the way it’s implemented.

Why is that? They seem pretty similar on the surface, so I'm curious differences exist under the hood which would preclude app development.

[–] hendrik@palaver.p3x.de 8 points 4 months ago (1 children)

There isn't anything stopping this. It's just that no one is working on an app. And there isn't any API implemented (yet) for an app to hook in to and fetch posts and comments. Both could be programmed. Someone could also copy the Lemmy API and use arbitrary Lemmy apps with Piefed. I think the developer is open to any of that and I'm pretty sure I read some feature request. It's just that the focus currently is on other things. And Piefed works well as an progressive web app. You can open it in your browser and click "Add to home screen" and you'll get an icon and a browser window that pretty much feels like an app. I'm using that and also don't see any benefit in putting in the effort to maintain an app, when it works well as is.

[–] threelonmusketeers@sh.itjust.works 4 points 4 months ago (2 children)

Both could be programmed. Someone could also copy the Lemmy API and use arbitrary Lemmy apps with Piefed.

This seems like an interesting idea. On one hand, I could see how it could hamper development, but on the other hand, it would be nice if all of the threadiverse platforms (Lemmy, Piefed, Sublinks, Mbin?) were standardized enough that the apps could be interoperable. I think giving users multiple options for how to access and interact with the content would be good for the fediverse as a whole.

[–] otl@hachyderm.io 2 points 4 months ago

@threelonmusketeers @hendrik This is how many Fediverse microblogging systems currently work; they serve the Mastodon API for client to server (e.g. app to server) interactions. GoToSocial doesn't even provide any user interface; you use it from some app originally designed for Mastodon. Why? I think because Mastodon's HTTP API is simpler, better documented and well-tested compared to something like ActivityPub's Client-To-Server API.

@fediverse

[–] hendrik@palaver.p3x.de 2 points 4 months ago* (last edited 4 months ago)

That would be nice. In practice, not even ActivityPub as the underlying protocol is standardized enough to ensure interoperability between the microblogging, threaded conversations, videos, etc. As far as I understand, it's pretty minimal and even voting etc isn't as standardized as it needed to be. So I don't have much hope for another protocol being that well-defined and agreed upon, if we don't even have that.

That being said... ActivityPub defines server to server and client to server communication. I think a good way to tacke this is do away with extra Lemmy, Piefed, Mastodon and Peertube clients/apps, and have all the apps speak ActivityPub with the servers/instances. That's already implemented on the server side. It'd do away with implementing any extra APIs. And make any app compatible with any Fediverse project. But we need a new ActivityPub protocol revision for that. Well-defined and with quite some extras. compared to what we have now. And everyone needs to agree on this and implement it. But in my eyes that would solve a lot of issues that are currently slowing down the Fediverse.