28 comments

[ 79.8 ms ] story [ 397 ms ] thread
(comment deleted)
It just looks like a funny slop project if you read the English readme, but reading the Russian PHILOSOPHY.md [1] (auto-translated [2] if you don't read Russian) makes you realize that there's probably something more than "let's implement a messenger using git remote as a storage", knowing how popular messenger apps are getting blocked in Russia.

[1]: https://github.com/vanyapr/makaroshki/blob/main/PHILOSOPHY.m...

[2]: https://github-com.translate.goog/vanyapr/makaroshki/blob/ma... (Google Translate)

documentation was updated in the last few days. You might want to read the section about the funny legal collision this architecture creates — not sure, but it might apply to other jurisdictions too, not just Russia. Either way, it's an interesting side effect of using generic git hosting as a message transport.
"Single file" is a bit misleading when it requires Github to do anything.
I wonder why this type of deployment is not more popular - pushing all resources inside a single HTML file, with a script tag, and inline resources as blobs.
> so the first screen does not burn unauthenticated GitHub API rate limit.

Claude loves this dumb word "burn". Recently it even said "burn a TOTP" as if they are finite.

"Sending a message to your mother should not require infrastructure comparable to a small bank."

To that end, requiring the use of GitHub for your application to work is a dead end.

"Macaroni Messenger is a distributed messaging system"

No.

"The backend does not exist."

Unless by "backend" you mean the underlying infrastructure and server logic you've made the clients depend on for the exchange of messages to happen.

torrents need trackers but we still consider them peer to peer

crypto needs nodes but we still consider them decentralized

direct tcp/ip communication still requires routing but etc

Nice idea. I recently published an article with a different twist. Static Vite+React site but all the backends are via OAuth PKCE and your customers bring their own. https://type2fun.net/infinitely-scalable-personal-apps I like the idea of building apps but skipping the infra burden/costs.
So, browser = Java Runtime; uber HTML = applet?
When docs say "no backend", but git (GitHub) is actually your backend :/
Reminds me of a time when it was possible to "deploy" single HTML files via shorturl services by using base64 URI scheme
<critique> OP keep saying the backend implementation doesn't matter, it can be trivially switched to something other than Github. It's not. The whole app you write revolves around Github's HTTP endpoints. There's no actual provider-agnostic Git operation in the code (for that you need to use isomorphic-git [1]). So a much more apt title for this should be: "Macaroni - a chat UI in a single HTML file that stores messages data in a Github repo" </critique>

I'm sorry to say this, but this whole thing reeks of vibeslop, and not just the code. The docs, the readme, even the replies of OP are at least Claude-assisted, if not fully Claude-generated.

And I'm trying not to be derisive about LLM generated output anyway. LLM generated output can be sane and meaningful and to the point. This is just a questionably-cool tech demo dressed up under a sensationalistic title.

Fixed last night.

The GitHub-specific adapter is now one of several.

please do not propagate errors ... it is "Maccheroni"
That README got a few solid chuckles out of me. :) Really cool project imo
Yes!

Now we need to build a messenger that uses pastebin exclusively as the backend.

I laughed at the 1000% vibecoded badge
This is not a bad idea ... for public team communication. This pretty much solves the "Discord is not documentation" and the dataloss in forum problems. If the communication was stored in the same place as the repostory, you are guaranteed to have saved and searchable messages. As a side-effect, AI can read all the past discussions for better "1000% vibecoding"
to paraphrase what he said, "instead of K9s, PostgreSQL, Redis, Oauth, WebSocket Gateway, Service Discovert; we're going to use git, html and json", I had a panic attack as soon as I read that.