Home | Notifications | New Note | Local | Federated | Search | Logout

Note Detail


Samuel Brinkmann@sabrinkmann@hachyderm.io (2026-06-02 04:15:16)
The Fediverse is so cool because of the diversity of the different software. In the last weeks, I did build a (completely?) new one. The Menuverse consists of two software: 1) create daily changing dishes like in a canteen, and 2) can aggregate different of this actors in a marketplace. The working title for this is Menuverse. 
Every canteen is Fediverse actor and not only can these marketplaces subscribe to this, but also other softwares like Mastodon, Misskey and so on.
I created a demo setup with live data from different university canteens here:
https://mahlzeitheute.de/ This is the marketplace software)
(The data and frontend is currently only in German).
You can also visit or follow the nearest canteen to me here: @fl-ca1.

You can find the full software here: https://codeberg.org/54GradSoftware/menuverse
But please note that this still quite experimental and I would not advise running in production (unsupervised).

I would love to get (technical) feedback, and I'm looking for real canteens who would like to test the software.

More information in the next posts (this is a thread). [1/4]

#fep0837 #FediverseDevs #fediverse
Reply

---Replies---
Samuel Brinkmann@sabrinkmann@hachyderm.io (2026-06-02 04:15:16)
The software is built with @fedify and uses Nuxt for the server and server-side rendering. This is my first bigger Fedify project, so I'm looking for improvements and best practices.
The Fediverse data structure is built on top of: https://codeberg.org/fediverse/fep/src/branch/main/fep/0837/fep-0837.md.
From the data point of view, this includes the proposal and resourceConformsTo field, which links to an URI. Like: https://mensa.mahlzeitheute.de/users/fl-ca1/menu-items/currywurst-currysosse-und-pommes.
Behind this is a JSON LD with a description of the food. As someone who is gluten intolerant, the allergen information is quite relevant and interesting. I'm not sure if this is the best way, and I'm interested what others would do. [2/4]