Are there ideas for client-server model.

Miklos Vajna vmiklos at
Wed Jul 14 09:02:39 UTC 2021

Hi Stef,

On Tue, Jul 13, 2021 at 09:32:10AM +0200, Stef Bon <stefbon at> wrote:
> > What you describe sounds a lot like the functionality that the LOK API
> > exposes. Online builds a c++ server on top of that, and then clients
> > connect to that via websockets.
> Online? What do you mean with "online"? which uses the LOK API and has a
client-server model.

> > But core has a gtktiledviewer demo app
> > that shows that that LOK API is not tied to web browsers. So either you
> > could build something not-browser-based on top of the LOK API or build
> > on top of Online's server piece, but your clients would be desktop apps,
> > not browsers.
> >
> Yes, does this example program read only or also write access?
> Is editing possible?

Sure. If you build core.git, you can do 'bin/run gtktiledviewer' to try
it out yourself. It runs in-process to help debugging, though.

> This client is a bit what I want, but still very far from the end goal.

Another example is the gtk app in online.git: that is also nominally a
desktop app, but in fact it reuses the JS user interface from Online.

The bottom line is that the LOK API already provides collaborative
editing, and if you want a client-server protocol, Online already has
that, it would be probably a bit pointless to invent a parallel protocol
which does the same. :-)



More information about the LibreOffice mailing list