Skip to content
This repository has been archived by the owner on Jan 19, 2022. It is now read-only.

Consider using ConverseJS headless as the client backbone #40

Open
stevenroose opened this issue Mar 6, 2019 · 4 comments
Open

Consider using ConverseJS headless as the client backbone #40

stevenroose opened this issue Mar 6, 2019 · 4 comments
Assignees
Labels
enhancement New feature or request

Comments

@stevenroose
Copy link

So apparently ConverseJS has a "headless mode" where you just get a full-featured client without a UI attached. That way, you get automatic access to features like OMEMO, MAM, MUC, ... And you can just stick a UI on top.

I think there is really a need for a simple XMPP web client with the looks of Opa. It would be sad if this projects slows down because you are redoing the work other have done before you. So I would like to suggest considering building on top of Converse.

I discussed this as well with @jcbrand (ConverseJS maintainer) and he'd be happy to guide you through the process of using ConverseJS headless!
Please get in touch with him if you have questions what this would require.

@kevinfaveri kevinfaveri self-assigned this Mar 6, 2019
@kevinfaveri
Copy link
Collaborator

kevinfaveri commented Mar 6, 2019

This seems to be a great idea!
I did not imagine Converse had a 'headless' mode.
I will look into Converse source code and usage... It will probably need a rewrite of Opa current app structure, but in return would be very rewarding from the point of view that would greatly facilitate the addition of various specifications of the XMPP.

@kevinfaveri kevinfaveri added the enhancement New feature or request label Mar 6, 2019
@jcbrand
Copy link

jcbrand commented Mar 8, 2019

Hi @kevinfaguiar

It's great to hear your considering basing Opa on @converse/headless. Please don't hesitate to ask me if you have any questions or need help.

@cmrd-senya did quite a bit of work on @converse/headless and he has also used it for a work project AFAIK. You might want to take a look at converse.js-vue-example.

There are currently two tickets related specifically to @converse/headless which you probably need to be aware of. See here: https://github.com/conversejs/converse.js/labels/headless

Now that I know you're looking into this, I'll prioritize those two tickets. ;)

@stevenroose
Copy link
Author

@kevinfaguiar did you have any time to look into this? I was getting quite excited with the prospect of having a nice clean and intuitive Jabber web client.

@kevinfaveri
Copy link
Collaborator

I'm currently having some setbacks, personal issues, and have not had any time to focus on this project since... But I'm looking at how is the best way to incorporate Converse Headless into the project...

What will take some time will be to assemble the logic, since at first, I wish the Converse and the frontend to be separated, using the Converse more as a plug-n-play client (which, I'm thinking, is somewhat hampered by the encapsulation that ConverseJS currently uses)... I do not see it as a Converse problem, @jcbrand has his approach, which I even think is cool. But I'm thinking of other approaches to integrating with Opa.

It will take some time before this, and I can not give any release date of that supposed version using Converse as an XMPP client.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants