- Notifications
You must be signed in to change notification settings - Fork0
TLINDEN/anydb
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Caution
Between version 0.1.0 and version 0.2.1 deletion of keys did not work. Thereis a unit test to check for this, but this unit test had a bug as well anddidn't catch it. The bug and the test have been fixed. You are advised toupgrade to 0.2.1 and above.
Caution
Version 0.1.3 introduced aregression,which caused the encryption feature not to work correctly anymore.If you are using anydb 0.1.3, you are urgently advised toupgrade to 0.2.0
Anydb is a simple to use commandline tool to store anything you'dlike, even binary files etc. It is a re-implementation ofskate for the followingreasons:
- it's just fun to do
- anydb usesbbolt instead ofbadger. bbolt has a stable file format, which doesn't changeanymore. The badger file format on the other hand changes veryoften, which is not good for a tool intended to be used for manyyears.
- more features:
- output table in list mode uses TAB separator
- better STDIN + pipe support
- supports JSON output
- supports more verbose tabular output
- filtering using regular expressions
- tagging
- filtering using tags
- encryption of entries
- templates for custom output for maximum flexibility
- includes a tiny web server, which serves a restful API
And I wrote a very similartool 24 years ago and wanted to do it again wit go.
anydb can do all the things you can do with skate:
However, there are more features than just that!
There are multiple ways to installanydb:
Go to thelatest release page,locate the binary for your operating system and platform.
Download it and put it into some directory within your
$PATH
variable.The release page also contains a tarball for every supported platform. Unpack itto some temporary directory, extract it and execute the following command inside:
sudo make install
You can also install from source. Issue the following commands in your shell:
git clone https://github.com/TLINDEN/anydb.gitcd anydbmakesudo make install
Or, if you have the GO toolkit installed, just install it like this:
go install github.com/tlinden/anydb@latest
If you do not find a binary release for your platform, please don'thesitate to ask me about it, I'll add it.
A pre-built docker image is available, which you can use to test theapp without installing it. To download:
docker pull ghcr.io/tlinden/anydb:latest
To execute anydb inside the image do something like this:
mkdir mydbdocker run -ti -v mydb:/db -u`id -u$USER` -e HOME=/db ghcr.io/tlinden/anydb:latestset foo bardocker run -ti -v mydb:/db -u`id -u$USER` -e HOME=/db ghcr.io/tlinden/anydb:latest list -o wide
Here, we operate in a local directorymydb
, which we'll use as HOMEinside the docker container. anydb will store its database inmydb/.config/anydb/default.db
.
A list of available images ishere
The documentation is provided as a unix man-page. It will beautomatically installed if you install from source. However, you canread the man-page online
Or if you cloned the repository you can read it this way (perl needsto be installed though):perldoc anydb.pod
.
If you have the binary installed, you can also read the man page withthis command:
anydb man
Although I'm happy to hear from anydb users in private email, that's thebest way for me to forget to do something.
In order to report a bug, unexpected behavior, feature requests or tosubmit a patch, please open an issue on github:https://github.com/TLINDEN/anydb/issues.
This software is licensed under the GNU GENERAL PUBLIC LICENSE version 3.
T.v.Dein
https://github.com/TLINDEN/anydb
Licensed under the GNU GENERAL PUBLIC LICENSE version 3.
T.v.Dein
About
A personal key value store