This seems interesting, and I might try it.
But… I’m kind of sick of web applicatioms. Why does everything need to be a web application or a “not” web app using electron. (In this case I see the use case and reason, but in general)
I can’t speak to the general case, but let me answer why I picked the web app route in this particular case.
This was/is my reality:
- I want access to my space from my laptop (mac), phone (iPhone) and tablet (iPad) and browny points for my Boox e-reader (Android) and even more browny points for just having access from any random computer in the world (with a web browser)
- I have a full-time job, and this would just be a hobby project
- I have been doing (or been involved in) web development for 25 years
What are my options? I could go native and develop this either as a native iOS app and Mac app, and then do an Android app because why not. This is hypothetically possible, but would mean that 2 years in I’d probably not be anywhere near the functionality that SB has today.
I could go with a cross-platform stack like react-native or Flutter. This would have been an option, I suppose, but neither of those stacks I fully trust in terms of long-term viability yet. And RN is not really built for desktop apps.
Another part of the reality: CodeMirror exists (https://codemirror.net/). This is an amazing piece of engineering that took years to build, it’s a pretty amazing code editor that is very extensible and… it’s a web thing. Having to implement this natively would likely literally take me years.
So I decided on the web app approach. I’ve had native wrappers (Electron and one for mobile apps) along the way, but ultimately removed them because they take too much time to maintain and test, and I’m just a one person army with a few hours available here and there. PWA support is pretty nice these days and gives you a reasonable experience at a reasonable development cost. It’s a good trade off.
Would I make different choices given infinite time and resources? Absolutely, but you know… reality.
This is my story and it doesn’t apply to everybody, but likely other projects have similar reasons.
you can install it as a PWA
Generally, user interfaces are hard work. If you just want to code, then having a web app means you’re already 50% done.
Actually should be 90% done, but each browser has differences which means more coding… I’m looking at you, Internet Explorer
mobiles and desktops are very diffrerent and need different user incerfaces. So you are not savin, much work. In fact trying to handle both in on may be worse because of all the special cases. Be glad you don’t have to support teletypes, they demand different user interfaces.
Don’t all users of self-hosted personal knowledge management systems have a hacker mindset?
Interesting quite simmillar to Logseq. Would love to be able to writw code in it in python. With that and the ability to import pdfs and tak notes on a pdf quoting section by selecting etc might be worth moving over to it.
This is very cool, and I’ve been watching the project for a month or so.
I like the query setup and the templates look very interesting. One of my biggest complaints about Logseq is how much of a pain simple query operations can be.
A few things make me hesitate a bit:
- I’ve been burned on single-dev passion projects in the past.
- As a self hosted web app, it’s a bit more difficult to manage on a company owned machine. I know Electron apps get hate, but that would ease some pain here.
- The rapid pace of development is both exciting and worrisome. For example, a recent update completely changed the underlying templating engine from a well-known open source solution to a custom solution. I worry if I rely on this, something might catch me by surprise.
What are your thoughts on those concerns, OP?
All your concerns are completely fair.
Regarding the first, the best I can offer is what many other project in this space say: “it’s just markdown files on disk, you can take them anywhere at any time”. Obviously this is only partially true, because the more SB-specific features you use, the more you get locked in. Your notes will never go away (if you back them up). But all time building queries and templates, would have been wasted.
Regarding company owned machines: a concern I heard for Logseq and Obsidian is that people cannot use them at work/with a work machine because they’re not allowed to install anything. For SilverBullet I’d recommend not installing it on your laptop (work or otherwise), but rather on some other machine. Perhaps you have a Raspberry Pi lying around unused. Or maybe you buy a cheap VPS (silverbullet.md itself runs on a $5/month Hetzner VM). Then you can access it from anywhere with a web browser, and I assume your work laptop has one of those.
Regarding the high pace of development: also fair. The reason I have not been very actively promoting SB so far is because of the high change churn rate. If you’re a power user, you kind of need to keep on top of stuff. Mostly I attempt to give people migration tools, but this is always a opportunity cost decision. Until recently some fundamentals still didn’t feel quite right (like the templates). I think we’re getting there now though. Another one I still need to figure out is how to do the distribution of templates, slash commands. This idea of a Library you import works, but you cannot easily keep it up to date. This so something to still figure out. Generally I’ll do my best to mark the parts of this that are experimental or prone to still change.
I hope that helps.
What’s a “hacker mindset” and why do you need one to use this app?
Update: The homepage explains “hacker mindset” by linking to the wiki article for hacker lol
Where does it say that you need one?
That’s what the word “for” implies in the title
Well, that implies that it is made with that community in mind, not that everyone in that community needs it.
- Discord: for more real-time support and discussion.
Sigh…
It does look a lot like Logseq, but at least it’s not written in Clojure. Looks like an interesting project and hopefully it’ll mature to something better than Logseq 👍