~mro/pin4sha.cgi

♊️ Mirror of https://mro.name/pin4sha | 🐫 API wrapper for Shaarli exposing pinboard.in/api. Zero-config, drop-in, single-file CGI deployment.
929e452d — Marcus Rohrmoser 4 years ago
testdata
63edb6f8 — Marcus Rohrmoser 4 years ago
λ 🐫
8c0db45a — Marcus Rohrmoser 4 years ago
Merge branch 'pinboard.in/go'

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~mro/pin4sha.cgi
read/write
git@git.sr.ht:~mro/pin4sha.cgi

You can also use your local clone with git send-email.

#pinboard.in.cgi

The natural API for shaarli.

#Why?

The wish to have an API goes back to the early days.

And because shaarli started as a personal, minimal, delicious clone, using a minimal subset of just that very API seems natural to me. pinboard.in prooves the API is not only seasoned and mature, but also still up the job today.

Also another project of mine, ShaarliOS needs a drop-in API compatibility layer for a wide range of shaarlis out in the wild.

#How?

You find a single, statically linked, zero-dependencies (🐫 Ocaml) binary which is both a

  1. cgi to drop into your shaarli php webapplication next to index.php – as the API endpoint,
  2. commandline client to any shaarli out there, mostly for debugging and compatibility-testing purposes.

post flow

#Compatibility

All shaarlis from the old ages until spring 2020 (v0.11.1).

All systems 🐫 Ocaml can produce binaries for.

Just the delicious API calls in pinboard.in/v1/openapi.yaml

#Design Goals

Quality very good good normal irrelevant
Functionality ×
Reliability ×
Usability ×
Efficiency ×
Changeability ×
Portability ×