this post was submitted on 17 May 2024
26 points (90.6% liked)

Programming

17419 readers
23 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

Can someone please help me understand how one could make his own frontend for the Ferdiverse? It seems like to run on a bespoke protocol, and has HTTP endpoints as well. The help says you can create your own frontend, divorced of HTTP. What I am wary of is the documentation being out-of-date.

So if there's a bespoke protocol, is there a middleware that translates it to HTTP requests to make it possible to run on a browser? Sorry I am very bad at web and network in general.

So to sum my question up:

1- Is there a bespoke protocol, non-HTTP, to access Fediverse?

2- Where can I lay my hands on the latest documentation for creeating a custom frontend, especially one that runs on a non-traditional 'view'?

Sorry if I mention the bespoke protocol for the third time, but what is the use of such protocol? Like is there a client for it? Or do they just mean a protocol ON TOP of HTTP? Because it would be moot. If there's an HTTP protocol I could just use libcurl. If this protocol is as 'bespoke' as they say, is it well-described? Like do they have ABNF for it?

Again I am not very good at network and web in general. This would be my first 'webapp' so to speak.

Even if such thing exists, I would wanna do it.

Thanks.

all 10 comments
sorted by: hot top controversial new old
[–] [email protected] 12 points 6 months ago (1 children)

Fediverse generally runs on ActivityPub, which uses HTTP as a transport, so you’ll be good. The problem is that the clients don’t talk to fediverse, it's more of a server-to-sever protocol; you'd look into the specific server APIs. But you’re good there, too - all the big fediverse players use RESTful HTTP for their client-facing API.

[–] [email protected] 1 points 6 months ago

Thanks for your help my good man.

[–] [email protected] 11 points 6 months ago (2 children)

Lemmy (and most other ActivityPub server implementations) uses its own HTTP API to communicate with clients. I'm not sure where you read that HTTP is not required.

If you want to create a custom frontend, see https://join-lemmy.org/docs/contributors/04-api.html

Btw, you might be interested in https://github.com/mrusme/neonmodem

[–] [email protected] 3 points 6 months ago

This is so nice... Thanks.

[–] [email protected] 2 points 6 months ago

Btw, you might be interested in https://github.com/mrusme/neonmodem

This is exactly what I've been looking for. Sadly, it doesn't show any posts for me, after setting it up according to the readme. The search continues.

[–] [email protected] 1 points 6 months ago (2 children)

I think gnus.el might handle Lemmy now.

[–] [email protected] 1 points 6 months ago

I know for sure that there is a mastodon client for Emacs, but of course that uses a different protocol and wouldn’t work for lemmy: https://codeberg.org/martianh/mastodon.el

[–] [email protected] 1 points 6 months ago (1 children)

Can't load this website, what is it?

[–] [email protected] 2 points 6 months ago* (last edited 6 months ago) (1 children)

News and email reader that runs inside Emacs. .el is the file extension for Emacs Lisp.