Web Clipper API for CLI

In the design document is written that both desktop and cli should be able to start a web clipper server.
Am I correct to notice that the cli doesn’t support this yet?
Are there concrete plans to add this?

At the moment, only the desktop app runs the service.

@sciurius FYI:

@laurent this would be a nice feature. the only problem could be, if both (desktop and CLI app) are running at the same time. This has to be guarded somehow.

If they both use port 41184 only one can be active at a time.

@sciurius I'm aware of that. That's why I said it had to be guearded. :wink:

In my setup all Joplin clients sync with a cloud (ownCloud) server. This makes it tempting to consider the cloud as the authorative repository for the notes. So a headless Joplin content server (that directly communicates with the cloud) running as a daemon would allow all kinds of (authorized) apps to exchange notes with Joplin.

1 Like

For this, couldn’t you use the desktop app in the background? You could set it up to start minimised in the system tray and make it auto-start with the system. Wouldn’t that work?

Yes, except for a few details:

  • I must not exit the app (as I’m used to).
  • I’m not yet sure how many resources a resident Jopin will take.
  • It cannot run headless on a server.

As a first step, yes, this is fine. For more serious purposes a real headless server would still be better.

I see what you mean and I expect it’s easy to enable this since the desktop and CLI apps share most of the same boot code. https://github.com/laurent22/joplin/issues/834

Exactly my problem. I’d like to run it in an Ubuntu Server.

I’ve started looking at it here but I’m wondering what would be your use case for the headless server? Is it so that you can host it somewhere and then access it from anywhere over the internet?

For me the use case would be to run the joplin server on a NAS, together with the ownCloud server that stores the notes. Or maybe on a small server like RaspberryPi.

@laurent I don’t really want it accessible over the 'net. I’d only expose it to the local host. Then I can have a façade in front of it, that’ll let me create a note (and maybe append to an existing one).

That is, the one thing I still have set up with IFTTT and Evernote is that some stuff gets appended to a few notes, and occasionally a new one is created. Can’t do that with Joplin yet. But I definitely will not expose any interface that’ll allow reading of the notes.

Side note: not sure if you’ve read the discussion elsewhere, but I’m hoping I could maybe use Huginn for the façade, without having to write anything myself. If not, I do have an app already running that I could quickly update. (I want to avoid hosting a new service because of it, though.)

you spoke of it with me here :wink:

I know. That sentence was aimed at Laurent, though. :wink:

Oh dear. Hopefully, one day I get to understand all these techy terms and make a more meaningful contribution to this wonderful app. :blush:

Thanks for the feedback, I wonder if it would make sense to convert it to a server right away, with auth, etc. so that it can be used remotely.

That would open many possibilites. We could then create share sheets for mobile devices etc.

One lingering doubt remains: even in the scenario I’ve described, I’m still not sure I’d be able to handle the encryption satisfactorily. As it is, I’d have to sync all my notes into the server where they’d be in plain text - even though it’d be unnecessary for its actual job. Perhaps I’ll try a different approach.

I would very much like to run it headless, as it fits my workflow better and allows for a better integration into third-party md editors, so I may download a note anywhere, edit, and upload it back (maybe on a computer to which I may not download any software, for instance).

My notes are encrypted so I cannot download them from the upstream server (Nextcloud) and even if not encrypted I would still have to manually change the updated_time fields.

Moreover, running a headless server would allow us to create a web client for editing and managing notes, maybe using the (already pretty good) electron codebase.

I’ll have a a look into it.


1 Like