So, I'm developing a #cli #journaling application, essentially a #bash #passwordstore wrapper. (Think "journaling" like keeping a diary or captain's log, not journaling like file system things.)
I contemplated implementing this as a proper `pass` extension, but the result is an unnatural UX for the use case, and I wanted the freedom to extend the script itself independently of `pass` (and, if ever needed, decouple from it entirely). The core application enables a generic journal UX for writing and editing dated entries. For my own needs, I'm planning bullet journal-specific functionality as an extension library; this is necessarily going to be implemented in a way that lives outside of the core app but also diverges from the `pass` extension model.
Its base invocation, however, is shamelessly `pass`-like and takes the form
```
dear JOURNAL SUBCOMMAND [OPTS]
```
Still lots left to do besides the bullet journal library - support for passthrough to `git`, for example - but I've been using it for my own purposes as-is, and I'm liking it so far. The `ls` subcommand I'm especially proud of - worked out a decently simple but clever way to wrap `pass ls` while reprocessing the output to summarize the entries for a given day rather than list them out.
It's up at https://github.com/marcxjo/dear-journal.