No description
  • C 97.2%
  • Roff 2.1%
  • Scheme 0.6%
  • CSS 0.1%
Find a file
2024-07-16 18:32:08 +02:00
src [FIX] Somewhat fix semianon avatars 2024-07-16 18:32:08 +02:00
.gitignore [MOD] One-way Matrix->XMPP comms. 2024-06-17 18:26:37 +02:00
COPYING.AGPL [META] Actually start licensing 2024-06-23 01:22:10 +02:00
COPYING.CC0 [META] Actually start licensing 2024-06-23 01:22:10 +02:00
COPYING.TELO [META] Actually start licensing 2024-06-23 01:22:10 +02:00
LICENSE [META] Actually start licensing 2024-06-23 01:22:10 +02:00
Makefile [MOD/WIP] Externalise and add errors to commands 2024-07-13 22:34:51 +02:00
README.MD [ADD/MOD] Cleanup cmd, change Matrix user format 2024-07-14 20:00:41 +02:00
XEPS-TBD.TXT [ADD/MOD] Cleanup cmd, change Matrix user format 2024-07-14 20:00:41 +02:00

Parsee - the jealous XMPP<=>Matrix bridge


Parsee is a Matrix<=>XMPP bridge written in C99, with Cytoplasm, similar to Bifrost, but it is NOT a drop-in replacment.

Why?

Naming

The name 'Parsee' is actually a reference to Parsee Mizuhashi, a "bridge princess".

Reasoning (personal to LDA)

I hate Bifrost. I also wanted to dip my toes in XMPP, XML, and bridges a bit. Also, as a sister project to KappaChat, this means that I can integrate Parsee with KappaChat however I wish it to be, which allows me to mess around with a codebase I'm already familiar with.

"Why not just use Matrix lol"

"Why not just use XMPP lol"

These two having the same answer should be enough information. Also can I just have fun?

Also dependency bad.

BUILDING

$ make # This generates a 'parsee' executable.
$ 

DEPENDENCIES

Parsee tries to avoid dependencies aside from Cytoplasm.

RUNNING

TODO

DOCS

TODO

TODOS

  • Mess with Cytoplasm to make it have support for something like LMDB as an optional dependency. This should increase reliability and speed for anyone.

    • Nesting might be an issue we'll need to deal with. libdb and Berkley DB seem to lack support for them. If we can shove entries at specific indices, we might just manage to get some system that can at least emulate that, and hopefully be reasonably faster than the filesystem, with some added reliability.
  • Starting a DM from XMPP to a Matrix user(and also get rid of the '?'-syntax and use another invalid Matrix char/valid XMPP char ('$'?) for escaped)

  • PROPER FUCKING AVATARS XEP-0084 IS THE WORST PIECE OF SHIT KNOWN TO MAN. If any Jabberbros want to look at terrible code/XML and suggest things to have proper avatar support, I'm all in.

  • Consider making room/MUC admins/owners be able to plumb instead of it being restricted to Parsee admins, with permission from MUC owners, too

    • Limiting to admins may be a way to "control" consent for both, but this is only if Parsee admins are good-willed, which we must assume such statment to be false by default.
  • Look at XEPS-TBD.TXT for XEPs to be done

  • Achievements

Why?

"[...] and it [BoVeX] has an achievement system, because another thing I don't like is when software will not acknowledge that you've reached an obscure error state, essentially outsmarting it."

DONATING/CONTRIBUTING

If you know things about XMPP or Matrix, yet aren't familiar with C99, or just want to suggest a feature, you may open an issue.

Packaging Parsee (and Cytoplasm) for your specific platform might be a nice to have, to make Parsee easier to setup and manage.

(DON'T FOR NOW, THERE IS LITERALLY NOWHERE THIS GOES TO) You may also donate to the LiberaPay, alongside Telodendria's, as it is the project currently maintaining Cytoplasm.