5 ms·
I've been looking for something like this. Are there other similar tools in this space?
by lwhsiao 5y ago
I've been looking for something like this. Are there other similar tools in this space?
- wfleming 5y agoAnother comment already mentioned Khard, which has been around a while. [0] There's also Mates [1]. Less mature, very simple, but it's what I personally use. I try to steer away from relying on CLI tools implemented in python or ruby: at the system level they always seem to cause dependency hell problems eventually. Mates is implemented in Rust, so it's compiled, which is primarily why I chose it. An important related project is vdirsyncer [2]. Ppl, khard, and mates all store data in vcard format but don't talk to APIs or sync anything. Vdirsyncer can sync your vcard collection with your email provider or what have you. [0] https://github.com/scheibler/khard https://github.com/scheibler/khard [1] https://github.com/pimutils/mates.rs https://github.com/pimutils/mates.rs [2] https://github.com/pimutils/vdirsyncer https://github.com/pimutils/vdirsyncer
- vorpalhex 5y ago> I try to steer away from relying on CLI tools implemented in python or ruby: at the system level they always seem to cause dependency hell problems eventually. For python specifically, you can use `pipx` which will install an app into it's own venv and activate that venv only as needed, with fully isolated deps. [1] No such solution exists for ruby or php though, and I won't use those projects unless dockerized. [1] - https://pypi.org/project/pipx/ https://pypi.org/project/pipx/
- wfleming 5y agoI'm aware of that approach for Python, and Bundler can be configured to do a similar thing for Ruby. Those are good approaches for development environments (though I generally prefer Docker for those these days), but for system tools I think that's just kind of a hassle and I don't want to do it. For a tool I install & use, my happy path is "install it with my package manager, and then stop thinking about it". Upgrades will happen whenever I decide to ask my package manager to upgrade everything. (I use Arch Linux, so that's usually once or twice a week.) Needing to hand-setup an installation or deal with multiple package managers like that for a program makes me cranky. I've certainly done it when there wasn't a good alternative (and also occasionally wrap programs in docker containers as well if it's easier - https://github.com/wfleming/dockerfiles https://github.com/wfleming/dockerfiles), but it's the kind of thing that makes me pause and reconsider whether I really care enough to use whatever the program is.
- swalladge 5y agoI've been using abook [1], which is very old software but is fast, simple, stores data in plain text, and can export to vcard when needed. [1]: https://abook.sourceforge.io/ https://abook.sourceforge.io/
- gloriousternary 5y agoI recently started using abook as well and quite like it, the integration with neomutt is nice to have
- jacobevelyn 5y agoThis is maybe slightly different than what you’re looking for, but my project Friends[1] is a journaling CLI that I also use to keep track of people’s addresses and contact info (via the “notes” feature). [1] https://github.com/JacobEvelyn/friends https://github.com/JacobEvelyn/friends
- vbsteven 5y agoI'm working on my passion project that incorporates some features like this with some differences: * not only contacts but also tasks, projects, notes and calendars * not local, instead it uses a self hosted rest-like api wrapping a database centralizing all state * embedded MQTT broker that publishes CRUD events so you can hook into any events to script automations * cli client that works similar to this so commands can be chained in shell pipelines * there's also a tui client (mutt-inspired) and I might do web/mobile later It's far from finished, but if you're interested send me an email (link in profile) and I'll keep you up to date.