112 lines
3.2 KiB
Markdown
112 lines
3.2 KiB
Markdown
# JabberCard
|
|
|
|
JabberCard (formerly FASI) is a "fancy and sleek invitation" system with
|
|
addeitional features. https://schapps.woodpeckersnest.eu/jabbercard/
|
|
|
|
## About
|
|
|
|
JabberCard is an HTML invite page for XMPP.
|
|
The main purpose, is to provide an interface to share XMPP contacts via HTML
|
|
browsers.
|
|
It also provides an interface to explore XMPP server conferences, pubsub and
|
|
other services.
|
|
|
|
### Reasons for creating JabberCard
|
|
|
|
The main reasons for the realization of JabberCard are to:
|
|
|
|
- Add interactive capabilities, as well as vCard information;
|
|
- Create rapport with the viewers, by displaying vCard information, such as Full
|
|
Name and Description or Note;
|
|
- Realize the beautiful simplicity of XMPP, so that more people would be
|
|
motivated to utilize, install, serve, and develop XMPP software;
|
|
- Charm our "normie" friends, so called, by displaying an attractive contact
|
|
HTML page, which they can also utilize;
|
|
- Utilize an invitation page, with XMPP capabilities, regardless to the software
|
|
that powers an XMPP server;
|
|
- Realize that HTTP is obsolete and should be treated as an optional publishing
|
|
mean, because anything that HTTP offers, is already possible with XMPP, since
|
|
a couple of decades ago.
|
|
- Extend support for Gopher and Gemini, which do not allow scripts, and,
|
|
therefore, a server-side is essential for these ASCII type mediums.
|
|
|
|
### Special features
|
|
|
|
- Fetch vCards and photos;
|
|
- Indicate of available conferences, nodes and services;
|
|
- Retrieve number of conferences, nodes, participants, node items and services;
|
|
- Preview recent conference messages;
|
|
- View journal articles (i.e. PubSub node items that are published as Atom Over
|
|
XMPP).
|
|
|
|
### Extended features
|
|
|
|
- Browse services;
|
|
- Explore JID and node items.
|
|
|
|
### Other features
|
|
|
|
- Customization for specific brands (e.g. Conversations, Cheogram, monocles chat
|
|
and yaxim);
|
|
- Dark mode;
|
|
- Dynamic background in accordance to the photo colors.
|
|
|
|
## Technicalities
|
|
|
|
JabberCard is written in Python and utilizes Jinja2, FastAPI and Slixmpp.
|
|
|
|
JabberCard requires an XMPP account to work, it only needs an XMPP server.
|
|
|
|
## Supported features
|
|
|
|
- MUC
|
|
- Photo
|
|
- PubSub
|
|
- QR code
|
|
- Service Discovery
|
|
- vCard
|
|
|
|
## Supported XEP specifications
|
|
|
|
- XEP-0030: Service Discovery
|
|
- XEP-0045: Multi-User Chat
|
|
- XEP-0060: Publish-Subscribe
|
|
- XEP-0292: vCard4 Over XMPP
|
|
|
|
## Install
|
|
|
|
Use the following commands, to begin JabberCard.
|
|
|
|
```shell
|
|
git clone https://git.xmpp-it.net/sch/JabberCard
|
|
cd JabberCard/
|
|
python -m uvicorn fasi:app
|
|
```
|
|
|
|
## License
|
|
|
|
AGPL-3.0-only
|
|
|
|
## Copyright
|
|
|
|
Schimon Jehudah Zachary 2024
|
|
|
|
## Contributors
|
|
|
|
- Mr. Marvin Wißfeld ([larma.de](http://larma.de)) for consulting and
|
|
supervising the implementation of XEP-0292: vCard4 Over XMPP
|
|
|
|
- Mr. Matija Šuklje ([matija.suklje.name](https://matija.suklje.name)) for
|
|
proposing "JabberCard" as the name of this project.
|
|
|
|
## Thanks
|
|
|
|
A special thank you for Mr. Georg Lukas of [op-co.de](https://op-co.de/) from
|
|
Germany, who has gracefully published a sophisticated client-side HTML
|
|
invitation page, and consequently exposed that idea to the founder of this
|
|
project.
|
|
|
|
## Similar Projects
|
|
|
|
- [Easy XMPP Invitation Landing Page](https://github.com/modernxmpp/easy-xmpp-invitation) from Mr. Georg Lukas;
|
|
- [mod_invite](https://modules.prosody.im/mod_invite.html) module for Prosody.
|