this post was submitted on 11 Feb 2024
431 points (97.8% liked)

Selfhosted

38768 readers
178 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 62 points 6 months ago (6 children)

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)

[–] [email protected] 116 points 6 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:

  1. 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)
  2. I have a full-time job, and this would just be a hobby project
  3. 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.

[–] [email protected] 6 points 6 months ago (1 children)

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

[–] [email protected] 5 points 6 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.

[–] [email protected] 5 points 6 months ago* (last edited 6 months ago) (1 children)

Idk I’m loving what I’m seeing 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 4 points 6 months ago (1 children)

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

[–] [email protected] 2 points 6 months ago

I use SyncThing with obsidian on Android, window and linux and can confirm. Setting it up is straight forward my only issue is that it doesn't merge files. If a file is edited on two devices that can't be synced (one is offline while the other one edits the file for example) it turns the older edit of the file into a copy and takes the newer version for both devices. Depending on your use case it could not be an issue for you at all though.

[–] [email protected] 4 points 6 months ago

So that you can self host I think

[–] [email protected] 3 points 6 months ago (1 children)

I'm not crazy on web apps either. I'd want to edit my notes in vim.

[–] [email protected] 7 points 6 months ago (1 children)

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.

[–] [email protected] 0 points 6 months ago

You can use a regular program on any device if you save your workspaces and configs on a NAS or any number of file synchronization systems.

[–] [email protected] 0 points 6 months ago

you can install it as a PWA