this post was submitted on 11 Feb 2024
7 points (100.0% liked)

Selfhosted

60951 readers
519 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:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

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

Questions? DM the mods!

founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Coldus12@reddthat.com 1 points 2 years ago (1 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)

[–] zef@lemmy.world 3 points 2 years 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.