What’s a “hacker mindset” and why do you need one to use this app?
SilverBullet: the self-hosted notes app for people with a hacker mindset
Submitted 9 months ago by zef@lemmy.world to selfhosted@lemmy.world
Comments
z00s@lemmy.world 9 months ago
HKayn@dormi.zone 9 months ago
Where does it say that you need one?
peter@feddit.uk 9 months ago
That’s what the word “for” implies in the title
jqubed@lemmy.world 9 months ago
This looks interesting; is anyone here using it?
zef@lemmy.world 9 months ago
Well I have for the last two years, but I’m biased because I wrote it 🤓
farcaller@fstab.sh 9 months ago
I’d be curious to see comparison with Logseq. As it’s rightly mentioned, there are thousands of note taking apps and I’m not quite sure I see the selling point of SB. I really love the idea of notes as a database, but the query langauage seems subpar, more akin to obsidian’s dataview than the overwhelming power of tiddlywiki’s filters or Logseq’s queries.
I went from evernote to tiddlywiki to Obsidian to Logseq and somewhat stuck here now because I got the powerful queries in a very neat UI. With the market oversaturated as it is, I’d be nice to see what Silverbullet brings to the game that others don’t, what are the distinguishing features.
conrad82@lemmy.world 9 months ago
Yes, I have used it for many months. It has been the best solution for my use case for a while. Which is tasks, shopping, planning (trips, …), recipes, and a simple knowledgebase. It was the offline support that set it apart from some other solutions
I have the files in a syncthing folder, so I can access the files without running silverbullet
My biggest problem is keeping up with all the changes. Zef made some youtube videos that are helpful
prcrst@lemmy.world 9 months ago
I use it and love it. Having the metadata (tags, dates, …) of your pages available to query and organize is awesome. I also love the tagged tasks feature.
clmbmb@lemmy.dbzer0.com 9 months ago
Yes, I do and it’s great. I just wrote a template for cooking recipes.
Discover5164@lemm.ee 9 months ago
i’m using it at work to take notes and write documentation.
i think it’s a fantastic app.
i have it as a pwa and have at least one silverbullet for each desktop.
i have ~100 notes perfectly organized in silverbullet!
klassasin@programming.dev 9 months ago
I’m using it! I’ve been using it to track various household things and it’s worked great so far!
d13@programming.dev 9 months ago
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?
zef@lemmy.world 9 months ago
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.
d13@programming.dev 9 months ago
Thanks for your answers! Very fair thoughts, particularly about the flexibility of keeping things as just files on disk.
Regarding the work thing, I should clarify my use case: I’d like to take work related notes that could contain privileged company data. With a standalone app, I can install it and manage the files on my device (with cloud syncing in an approved corporate way). I could still probably do that here, but it requires the work of running the web server locally. Unfortunately, an external source like a VPS wouldn’t be allowed.
I have one more question, if you have some time: One of the things I like most about Logseq is that when there is a list of back links on a page, the context capture is excellent (likely due to it being an outliner). I’ve noticed that with SilverBullet, the context capture might begin/end in the middle of a word, etc. Is there a way to configure that or plans to enhance it?
onlinepersona@programming.dev 9 months ago
- 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 👍
TonyOstrich@lemmy.world 9 months ago
Researching anything that happened on the internet right now in the future is going to be absolute hell considering how much useful user information and interactions are “locked” behind Discord. Is there a term for something worse than link rot? With link rot it’s a case of a known unknown. With information on Discord it’s an unknown unknown.
scarilog@lemmy.world 9 months ago
There’s a forum I think, discord seems to be, as it clearly says, for real-time support and discussion.
I despise Discord as an alternative to a proper support forum, but having both options like this is great.
crazyminner@lemmy.ml 9 months ago
Why not something like syncthing and then just use a text editor you like?
Evkob@lemmy.ca 9 months ago
Did you bother opening the link? This project is clearly much more elaborate than simply synchronising notes.
prcrst@lemmy.world 9 months ago
If you know of any FOSS, offline editors for Android which can do what silverbullet can, drop a link.
wischi@programming.dev 9 months ago
That’s exactly what I did and never looked back. Just installed code-server + a few vs code plugins,l. Automatically synced via some some scripts that push and pull+merge git commits, done. No need for one of those million note taking apps. I also installed polyglot notebooks for vs code to embed code into notes.
conrad82@lemmy.world 9 months ago
I tried this, but couldn’t find a better editor as android app. The closest I got was Zettel notes. But silverbullet worked better
ndsvw@feddit.de 9 months ago
[deleted]zef@lemmy.world 9 months ago
I have not used Joplin, but did write a few high-level thoughts on comparing it to Obsidian and Logseq elsewhere which I’ll just copy and paste here:
I have not used Obsidian nor Logseq as much as I’ve used (or developed) SilverBullet. However here are a few headliners, but the main difference may well be that in SB I’m really assuming that the target audience is technical enough not to be scared by the idea of writing a query, or creating a template.
A few differences with Obsidian: it’s fully open source and it’s a web app that you self host. It’s still markdown files on disk, but that disk is located on your server and they’re accessible from anywhere you have access to that server without having to do convoluted things like setting up (or buy) sync services (like you do have to for both Obsidian and LogSeq).
Obsidian tends to solve everything with plugins, whereas SB has more batteries included (although technically much of this is implemented as plugins that ship with SB itself) specifically: powerful indexing, querying and template support. Obsidian has Dataview and Templater, and some other plugins I think, but they’re developed by a third party.
Another difference difference would be UI minimalism. The number of panes and tabs in Obsidian dizzies me, although I know you can fold or hide all of them. In SB it’s minimal by default.
Compared to LogSeq: logseq is an outliner. You can do outlines in SilverBullet (and I do, a lot, there’s some nice shortcuts for this too: silverbullet.md/Outlines). However, SB is more of a wiki than an outliner. You don’t have to write everything in bulleted lists. To me this is important, because I also write my blog posts and other articles in SilverBullet and doing that in an outline is somewhat awkward.
But to be clear: Obsidian and Logseq are both great, and they’re more mature. They’ve been around longer and have bigger communities (so far). Try them out and see what you like.
SparrowRanjitScaur@lemmy.world 9 months ago
You can write long from content in logseq. Shift enter gives you a new line instead of a new bullet.
devzero@infosec.exchange 9 months ago
I’ve used Joplin, logseq, and Obsidian and I’ve switched to this. It’s great for self hosting at home and using at work without having to install apps or applications. I enjoy that it is truly open source and the interface is much cleaner than Joplin and the files on disk are actually more readable unlike Joplin. I love how programmable it is.
7heo@lemmy.ml 9 months ago
zef@lemmy.world 9 months ago
Hah! Didn’t realize. Indeed! Although apparently still called “noot” then.
genie@lemmy.world 9 months ago
With the rise of these .md based personal knowledge database applications it would be amazing to see some conversion software.
I understand that each has their special sauce. Does anyone know what would be the most difficult part about building a tool like that to copy in Logseq data to SB for example?
douglasg14b@lemmy.world 9 months ago
Or unification/interoperability even
Muehe@lemmy.ml 9 months ago
pandoc.org is probably what you are looking for, but you might have to create a custom reader/writer or find one on the internet.
genie@lemmy.world 9 months ago
Oh cool! I didn’t realize pandoc was extensible enough to deal with this kind of conversion. I’ll give it a look!
fathog@lemmy.world 9 months ago
Wow, this is super cool - saving this for when I finally spruce up my old desktop for a home server. You’re a talented person mate
corsicanguppy@lemmy.ca 9 months ago
literally
This is how I know I don’t need to look it over.
Gutless2615@ttrpg.network 9 months ago
Okay this is looking great. Spun up the docker container though and it’s a preeeeetty steep learning curve. Any suggestions on how I could move my obsidian vault into my silverbullet space?
HKayn@dormi.zone 9 months ago
Since both services store your notes as markdown files on your disk, you can just move your files over. When spinning up a docker container, you likely defined a path for your SilverBullet space. If not, try creating a note and see if you can find it on your disk.
Ohh@lemmy.ml 9 months ago
Looks really kool. Reminds me of tiddlywiki but yet totally different. The authentication is very briefly touched upon. What kind of auth is it? Maybe more robust to just use http auth via caddy?
zef@lemmy.world 9 months ago
It’s pretty simple. Supports a single username:password combo, issues a JWT in a cookie and that’s it.
Nibodhika@lemmy.world 9 months ago
But is there brute-force prevention mechanisms, e.g. delaying logins by a few seconds?
nooeh@lemmy.world 9 months ago
Don’t all users of self-hosted personal knowledge management systems have a hacker mindset?
muntedcrocodile@lemm.ee 4 months ago
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.
ndsvw@feddit.de 9 months ago
[deleted]tlf@feddit.de 9 months ago
As far as I understand Markdown is a syntax standard used for that kind of note taking or article writing
sailingbythelee@lemmy.world 9 months ago
I clicked on the link to “installation instructions” on your home page in a couple of different places and got the error “e.split is not a function”.
paletochen@lemmy.world 9 months ago
It works for me on the main page. The Installation link sends you to:silverbullet.md/Install
sailingbythelee@lemmy.world 9 months ago
Thanks, your link worked for me.
Nibodhika@lemmy.world 9 months ago
This looks awesome and exactly what I have been looking for.
One question about implementation just out of curiosity, is there any database? I’m worried that when it gets to hundreds or thousands of pages querying things becomes slow if it’s just scanning files.
zef@lemmy.world 9 months ago
Yes, it’s using SQLite under the hood in Online mode and IndexedDB in the browser in Sync mode.
Nibodhika@lemmy.world 9 months ago
SQLite should be more than enough, I can’t find the file on the space folder though, is it created inside the docker container on server startup? Is there a reason not to store it in space so it doesn’t need to be regenerated each time?
zef@lemmy.world 9 months ago
That said, I have not tested this with hundreds of thousands of notes (I have close to a thousand myself). No performance issues there, but…
Nibodhika@lemmy.world 9 months ago
I said hundreds or thousands, I don’t expect to be creating hundreds of thousands of pages, but from your reply on the other thread SQLite should be more than capable of handling this scale.
Nice knowing that you have close to a thousand and it’s still fine. It will take me a long time to get to that amount of pages, but if I can get started with this it seems like an awesome way of storing knowledge bases, so I expect it will grow quite rapidly as I migrate all of my different things into it.
sepi@piefed.social 9 months ago
I had been using logseq before. This is great running on one of my rpi4b's. Thanks!
Qu4ndo@discuss.tchncs.de 9 months ago
Nice notetaking app with powerful features!
Main question for me: Can you export plain markdown from the application (or Docker Volume) or is everything only accessible through the application?
I don’t want to manually export my stuff if I want to switch note application sometime in the future
BurnoutDV@lemmy.world 9 months ago
Interesting, but what does this solve what Bookstack does not solve? I mean sure, it looks nice and hacky and all that. But if i am going to host some note thingy, www.bookstackapp.com is right there and apparently the dev nowadays lives from the thing (which is nice i guess). Not to belittle your project in anyway, even if something like your thing would exist exactly as that its still commendable but i am already running Bookstack and this seems to add anything to any use case i could think off.
Virulent@reddthat.com 9 months ago
This looks very similar to trilium
Coldus12@reddthat.com 9 months ago
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)
zef@lemmy.world 9 months ago
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:
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 (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.
Cyber@feddit.uk 9 months ago
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
bluGill@kbin.social 9 months ago
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.
vext01@lemmy.sdf.org 9 months ago
I’m not crazy on web apps either. I’d want to edit my notes in vim.
SchizoDenji@lemm.ee 9 months ago
If you’re using it on the host device, web apps make zero sense. But web apps provide the flexibility of using it with any device.
Gutless2615@ttrpg.network 9 months ago
Idk I’m loving what I’m crumb because as an Obsidian evangelist that’s paid for Sync for years, basically all I want that obsidian doesn’t have is self hosting and FOSS. I have most of my daily apps self hosted and accessible as web apps, not needing to get out of the browser and able to more easily jump between devices would be great.
med@sh.itjust.works 9 months ago
So I’ve implemented Obsidian Git, and it works really well. The only trouble I’ve had is on iOS (I’ve got m it on android, fedora, debian and windows) where it’s bot supporting merge changes.
I’m considering moving to logseq and implementing the same.
The other alternative to self hosting is ‘SyncThing’. After I introduced my dad to obsidian, I saw how he did his synchronization with it, and it looks like a lot less overhead - fairly compelling
Happy to share some notes on my setup and his if you like
soloner@lemmy.world 9 months ago
So that you can self host I think
Discover5164@lemm.ee 9 months ago
you can install it as a PWA