ortuman/jackal

Why Jackal? Why a new XMPP Server

Closed this issue ยท 8 comments

Hello everyone,
I am searching for a xmpp server for my new project. And I just want to know the reason why you decide to create a new XMPP server even if there are already good existing one. I am just starting with xmpp so I am not an expert.

What is the advantage of Jackal in comparison to the others like ejabberd or openfire?

Thanks in advance.

From my point of view:

  • Openfire: Dead / dying project (as far as I know) and its Java. Nobody wants Java. ;-)
  • Ejabberd: Mature, but Erlang and well, ... somehow mysterious? Can't fix issues myself, but I need help from experts.
  • Prosody: Easy but sometimes unstable / needs lots of RAM if you host ~1.000 users
  • Everything else: Not maintained, dead, dying or just bad.

Golang is an easy to learn and very nice language to achieve things like concurrent program execution and is just made for web / server / backend projects. It's a perfect match.

Apart from that: It's just time to clean up this XMPP server mess, burn all the bad software and do things right from the beginning. That's why I'm interested in Jackal.

@JusticeN Btw there's a chat for questions like this. GitHub Issues is not the correct place to ask general questions, but rather ask questions about development / suggest features / ...

https://gitter.im/jackal-im/jackal

I think it's cool that there's an XMPP server being developed in Golang, but I'd like to clear up some misconceptions.

Openfire: Dead / dying project (as far as I know)

It's not dead, nor dying. There are regular releases and it's still used a lot. The fact that it's written in Java makes it popular with larger enterprises

Everything else: Not maintained, dead, dying or just bad.

Not true. MongooseIM (Erlang) and Tigase (Java) are two more servers that are FOSS with (AFAIK) commercial companies doing most of the development work on them.

Btw there's a chat for questions like this. GitHub Issues is not the correct place to ask general questions, but rather ask questions about development / suggest features / ...

Would be nice if you offered an XMPP MUC instead, this is an XMPP server project after all.
Something like https://chat.prosody.im/ for example.

I'm building a Go-based solution and XMPP is a part of it. Having the XMPP server within the same tech stack is great for me.

+1 for XMPP MUC chat, I guess this will come once jackal supports MUC :-)

@JusticeN Btw there's a chat for questions like this. GitHub Issues is not the correct place to ask general questions, but rather ask questions about development / suggest features / ...

https://gitter.im/jackal-im/jackal

Thank you Robzon. irecently join the chatroom

Thank you guys for you reply. I will just close this issue and continue asking in the gitter chat room

You have forgotten:

  • Tigase
  • Metronome IM, the Prosody IM fork
  • Jabberd2

Old:

  • Jabberd14
  • DJabberd
* Ejabberd: Mature, but Erlang and well, ... somehow mysterious? Can't fix issues myself, but I need help from experts.

I don't think Erlang is a bad choice when you need to run production ready, fault tolerant and distributed system :)