Update document README.

This commit is contained in:
Schimon Jehudah, Adv. 2024-11-20 15:39:16 +02:00
parent ee07600546
commit bf1516f0b2

165
README.md
View file

@ -1,104 +1,153 @@
# JabberCard # JabberCard
JabberCard (formerly FASI) is a "fancy and sleek invitation" system with > Your Online Jabber Identity
addeitional features. https://schapps.woodpeckersnest.eu/jabbercard/
## Project page
gemini://woodpeckersnest.space/~schapps/jabbercard.gmi
https://schapps.woodpeckersnest.eu/jabbercard/
## About ## About
JabberCard is an HTML invite page for XMPP. JabberCard (previously YOJI, and formerly FASI) is a "fancy and sleek invitation"
The main purpose, is to provide an interface to share XMPP contacts via HTML system with additional features.
browsers.
It also provides an interface to explore XMPP server conferences, pubsub and
other services.
### Reasons for creating JabberCard It is primarily an HTML invitation page for XMPP, which allows to present XMPP profiles as
fancy HTML pages.
The main reasons for the realization of JabberCard are to: The main purpose, is to provide an interface to share and link to XMPP contacts
and group chats via HTML browsers.
- Add interactive capabilities, as well as vCard information; It also provides interfaces to view conference messages and PubSub posts, and
- Create rapport with the viewers, by displaying vCard information, such as Full to explore XMPP servers, PubSub nodes and other services and entities.
Name and Description or Note;
- Realize the beautiful simplicity of XMPP, so that more people would be ## Motives for creating JabberCard
motivated to utilize, install, serve, and develop XMPP software;
- Charm our "normie" friends, so called, by displaying an attractive contact The main motives for the realization of JabberCard are to:
HTML page, which they can also utilize;
- Utilize an invitation page, with XMPP capabilities, regardless to the software * Create rapport with the viewers;
that powers an XMPP server; > By displaying vCard information, such as Full Name and Description or Note;
- 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 * Charm our "normie" friends, so called;
a couple of decades ago. > By displaying an attractive contact HTML page, which they can also utilize;
- Extend support for Gopher and Gemini, which do not allow scripts, and,
therefore, a server-side is essential for these ASCII type mediums. * Utilize an invitation page with dynamic XMPP capabilities;
> Regardless to the software that powers an XMPP server;
* Realize the beautiful simplicity of XMPP;
> Exposing the uniform structure of XMPP would cause to people to be motivated
> to utilize, install, serve, and develop XMPP software;
* 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;
> Gopher and Gemini do not allow scripts, and, therefore, a server-side is
> essential for these type of mediums.
## Features
The vatious features of JabberCard.
### Special features ### Special features
- Fetch vCards and photos; * Fetch vCards and photos;
- Indicate of available conferences, nodes and services; * Indicate of available conferences, nodes and services;
- Retrieve number of conferences, nodes, participants, node items and services; * Retrieve number of conferences, nodes, participants, node items and services;
- Preview recent conference messages; * Preview recent conference messages;
- View journal articles (i.e. PubSub node items that are published as Atom Over * View PubSub journal articles, that are published as Atom Over XMPP.
XMPP).
### Extended features ### Extended features
- Browse services; * Browse services;
- Explore JID and node items. * Explore JID and node items.
### Other features ### Other features
- Customization for specific brands (e.g. Conversations, Cheogram, monocles chat * Dark mode;
and yaxim); * Dynamic background in accordance to the photo colors;
- Dark mode; * Further customization for specific brands.
- Dynamic background in accordance to the photo colors.
### Supported XMPP 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-0277: Journaling Over XMPP
* XEP-0292: vCard4 Over XMPP
* XEP-0472: PubSub Social Feed
## Technicalities ## Technicalities
JabberCard is written in Python and utilizes Jinja2, FastAPI and Slixmpp. JabberCard is written in Python and utilizes Jinja2, FastAPI and Slixmpp, and it
only requires an XMPP account to work.
JabberCard requires an XMPP account to work, it only needs an XMPP server. ## Target clients
## Supported features JabberCard is offered for free, and it was made due to urgency and necessity
(reasons not to be disclosed in public), and is intended to anyone who is
deploying XMPP services.
- MUC * aTalk
- Photo * blabber.im
- PubSub * Conversations
- QR code * Cheogram
- Service Discovery * Dino
- vCard * Draugr.de
* GoodBytes
* Ignite Realtime
* Isode
* Kaidan
* monocles chat
* Moxxy
* Openfire
* ProcessOne
* Tigase
* WPN
* yaxim
* ... and any branded XMPP service.
## Supported XEP specifications ## Movim
- XEP-0030: Service Discovery If you have a [Movim](https://movim.eu) instance, then you probably do not need
- XEP-0045: Multi-User Chat JabberCard.
- XEP-0060: Publish-Subscribe
- XEP-0292: vCard4 Over XMPP
## Installation ## Installation
It is possible to install JabberCard using pip and pipx. It is possible to install JabberCard using pip and pipx.
#### pip inside venv ### pip inside venv
``` ```
$ python3 -m venv .venv $ python3 -m venv .venv
$ source .venv/bin/activate $ source .venv/bin/activate
``` ```
##### Install #### Install
``` ```
$ pip install git+https://git.xmpp-it.net/sch/JabberCard $ pip install git+https://git.xmpp-it.net/sch/JabberCard
``` ```
#### pipx ### pipx
##### Install #### Install
``` ```
$ pipx install git+https://git.xmpp-it.net/sch/JabberCard $ pipx install git+https://git.xmpp-it.net/sch/JabberCard
``` ```
##### Update #### Update
``` ```
$ pipx reinstall jabbercard $ pipx reinstall jabbercard
@ -109,14 +158,6 @@ $ pipx uninstall jabbercard
$ pipx install git+https://git.xmpp-it.net/sch/JabberCard $ pipx install git+https://git.xmpp-it.net/sch/JabberCard
``` ```
### Configure
Copy file `settings.toml` to `~/.config/jabbercard/`.
Copy directories `css`, `img`, and `template` to `~/.local/share/jabbercard/`.
Copy files `clients.toml`, and `systems.toml` to `~/.local/share/jabbercard/`.
### Start ### Start
``` ```