~sbinet/sako

Sako is a Wallabag-compatible articles safekeeper

~sbinet pushed to ~sbinet/sako git

2 months ago

~sbinet pushed to ~sbinet/sako git

2 months ago

#sako

Build status GoDoc

sako ("bag" in Esperanto) is a Wallabag-compatible set of tools for your local sako instance.

sako-logo

The sako logo is from Egon Elbre (under the under CC0 license.)

#Commands

sako ships with a couple of commands:

  • sako-mgr to manage a local sako instance
  • sako-mgr import to import articles, tags, annotations and tagging rules from a Wallabag instance
  • sako-srv to serve a local sako instance (with a WIP Web UI and Wallabag-compatible REST API)

#sako-mgr

$> sako-mgr help
sako-mgr - manages a sako server

Commands:

    client-add  creates a new client for an existing user of the sako system
    client-rm   removes an existing user's client from the sako system
    import      imports data from a wallabag account into a sako account
    init        initializes a sako server
    user-add    creates a new user for the sako system
    user-rm     removes a user from the sako system

Use "sako-mgr help <command>" for more information about a command.

#sako-srv

$> Usage of sako-srv:
  -addr string
    	[host]:port to serve (default ":8080")
  -dir string
    	path to sako repository

#Example

#Initialization

$> go install git.sr.ht/~sbinet/sako/cmd/sako-mgr@latest
$> export SAKO_ROOT=/path/to/sako/data-dir
$> sako-mgr init -pass SomeS3cr3t -root ${SAKO_ROOT}

## adding a local user
$> sako-mgr user-add -user bob -pass s3cr3t -email bob@example.org ${SAKO_ROOT}

## adding a sako-client (for use with the sako REST API)
$> sako-mgr client-add -user bob -client-name 'my sako client' ${SAKO_ROOT}
client for user "bob" created:
client-id=1_<somehash>
client-secret=<some-other-hash>

## importing data from a remote Wallabag instance
$> sako-mgr import \
    -src-uri https://wallabag.example.org     \
    -src-usr bob-on-wallabag                  \
    -src-pwd bob-pwd-on-wallabag              \
    -src-api-id ${WALLABAG_CLIENT_ID}         \
    -src-api-secret ${WALLABAG_CLIENT_SECRET} \
    -dst-uri ${SAKO_ROOT}                     \
    -dst-usr bob                              \
    -dst-pwd s3cr3t

## using sako:
$> go install git.sr.ht/~sbinet/sako/cmd/sako-srv@latest
$> sako-srv -addr :8080 -dir ${SAKO_ROOT}

#Screenshots

sako-login sako-home sako-config-account sako-config-settings sako-config-rules sako-config-clients sako-all-articles sako-view-article

#License