Hacker Newsnew | past | comments | ask | show | jobs | submit | tkindy's commentslogin

I’m wondering what sorts of use-cases people would use a personal key-value store for. Maybe it’s just a useful foundation for building other tools on top of, like a password manager.


The primary use case is for shuffling around files or clipboards between different computers. I also regularly use the url-sharing capability.

Prior, I had to deal with ephemeral http servers, which I didn't like from an ergonomic perspective.

Ergonomically, I find redis nice. The problem is, that it is in-memory and that encryption is cumbersome. Also, kvass is able to be used offline, as the kv-store is implemented as a CRDT.


For passwords specifically there's a similar tool, https://www.passwordstore.org/ - but it stores GPG-encrypted plain text files versioned with git, instead of managing a sqlite db

More importantly, it has Firefox and Chrome extensions for auto-filling passwords on the web https://github.com/passff/passff https://github.com/browserpass/browserpass-extension


I use a KV, Hashi vault, so my shell scripts get api keys, secrets, etc and they’re not stored plaintext or in SCM.


I use a similar setup to store code snippets (certain Java annotations for integration/unit tests, various things like that), vehicle license plate/vins, internal (but nonsensitive) ids for test accounts, tons of things like that.

Honestly a password manager would probably be technically better—or a bunch of flat files lol—but there was a certain charm to having it displayed / function exactly as I like it, and lightning quick with nothing I didn’t need.

IDE would be another natural place for a lot of my usages, but I kept finding I needed to leave it in a pull request review or slack conversation or similar, not necessarily programming myself.


I use skate to store secrets used by some personal programs. I have scripts that pull out the secrets and set them as environment variables that are used by the programs. This way I don't have them sitting around in a configuration file in the source directory and can't accidentally commit them to git but they're easy to sync between computers.


I already use my password manager for the problem this tool is trying to solve.


But it's just a wrapper around SQLite. Skip the middleman and just use SQLite.


Or don't skip the middleman and get a simple k/v interface instead of having to deal with a whole sqlite database.


It's clearly not "just a wrapper around SQLite", read through the README and it'll be evident why.


But you can’t access Sqlite over the web.


...and you shouldn't.


Seems to me that for a personal tool like this, sqlite3 is non-problematic.

https://www.sqlite.org/whentouse.html

"Generally speaking, any site that gets fewer than 100K hits/day should work fine with SQLite. The 100K hits/day figure is a conservative estimate, not a hard upper bound. SQLite has been demonstrated to work with 10 times that amount of traffic."


Any concrete reasons? SQLite is probably good enough for 99% of websites / apps.


It's not designed to be straight exposed as a web service.

It's not hardened to handled malicious traffic.


I generally agree with your take.

> Aren't code reviews and design reviews 1-to-1 as well? Or worse, n-to-1.

I think PR reviews can be a resource for other engineers on the team to learn from beyond just the PR author. Granted, I think pair programming can probably deliver these lessons more effectively since you can have a live conversation about it and clear up any confusion there.

>> In addition, most of these alternatives be done asynchronously.

> And this is better, because...?

I don’t know the author’s feelings here, but I think this makes some sense in the context of the rising popularity of remote work. It isn’t necessarily a given that you’re in a similar time zone to your teammates.

I’ve also been interested in the topic of async work throughout the pandemic, with companies like Gitlab and Doist as examples who also evangelize the practice. I’ve pushed for some of those async practices on my team at work but feel like we’ve had mixed to little success with them.

So I agree with your skepticism of “async is better”, even if there was some reasoning provided.


Past thread discussing the topic-based idea when it was first floated by a member of Google’s Privacy Sandbox team https://news.ycombinator.com/item?id=28210507


I think Microsoft Powershell [0] sort of approaches what you’re describing. It’s not exactly table-oriented, but object-oriented such that there’s a lot more structure to data than in traditional command line environments. For example, their equivalent of ls returns an array of objects (i.e. rows) which you can filter, sort, etc. based on the properties of those objects.

[0]: https://docs.microsoft.com/en-us/powershell/scripting/overvi...


Seconded. It also comes with Import-CSV and Export-CSV. And cmdlets like Select-Object and Where-Object.

  Get-Service | Where-Object {$_.Status -eq "Stopped"}
Looks pretty close to what's being described.


I think it’s referring to Google saying FLoC is another fingerprinting vector.

> Not so, Google has suddenly now admitted, telling IETF that “today’s fingerprinting surface, even without FLoC, is easily enough to uniquely identify users,” but that “FLoC adds new fingerprinting surfaces.”

I agree the article takes a long time to get there. Maybe the author didn’t want to assume the Forbes general audience already knew the high-level details of FLoC.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: