Like many programmers, I tend to not let something like a missing program bother me too long. I wrote the missing program since it did not exist, and now I publish it, because it may be interesting to other people.

paperweb.jpgThe program is still at a very early stage. However, since it currently fulfills my needs, I’m not really sure where I’ll go from there…

The command-line interface is usable on its own, and its output is in JSON format, so that humans and programs can both comfortably use it. The WEB interface is based on the command-line interface, and care has been taken to ensure that the combination is secure.

The command-line interface should run on any Linux system, as its requirements are very standard; it does not use any Paperwork component, nor does it use the python language. The WEB interface only needs PHP and sudo. The one real requirement is that the machine that hosts these interfaces needs access to Paperwork’s data, preferably on local storage, or through a mount point.

You can get the program on my Git repository.

I think that I wrote all that was needed in the README file, but drop a comment if something is not clear or if I forgot something.

In short, the only dependencies are Linux (with sudo) and PHP. The CLI part is a single file, and the few files of the WEB part only need to be dropped to a PHP-enabled folder served by the web server (Apache, Nginx…).

Changelog:

  • 2016-02-01 — Minor update because the code evolved a bit.
  • 2017-02-16 — Fixed a typo: “yalic” instead of “yalis”…
  • 2017-04-20 — Circumvent port-knocking with a dedicated port (2222). To all who could not access my Git, please accept my apologies!
  • 2017-11-06 — A change of server had become necessary. It’s now done, and Git is now at a different address.