Commit freely

An environment where A project is a repository demands the feature of freely committing one’s work. No burden of opening external tools, with the click of a button, the progress is logged. I use most of the time Obsidian for managing my second brain, and a feature that I found lacking is being able to manage multiple repositories within a single vault. The existing (and excellent) obsidian-git doesn’t provide this feature; it’s more concerned to a single repository in a vault. With that in mind, I decided it was finally the time to create my own plugin to do exactly that.

During my Christmas and New Year break, obsidian-git-file-explorer was built. It’s still in the beta stage, nevertheless the core functionality is there: enables easily managing multiple repositories and seeing live changes in the vault. There’s still a lot of room for optimization. I’ve never before coded a complete project in TS or JS, and in many ways I just stuck with commonly used OO patterns in Java — the language I’m most familiar with, instead of doing the more functional, canonical JS way. To be honest, I still can’t barely read a JS project; I’m not used to how they nest callbacks and apply duck-typing or write functions that ‘just-works’ but lack maintainability for an external to the project. That’s of course a generalization and totally on my fault of not having enough experience with the language.

Rant apart, 39 commits later, the plugin is there. It works. Maybe not as performant as it should, in fact, I’d be really happy to accept any PRs that show me how to do it better.