I’m an experienced backend developer. To me, the backend world seems super simple compared to the frontend world.

It seems like there are a million options and I don’t have the experience to say what’s good and what’s not. I’m hit with major choice paralysis, basically.

I don’t have any special requirements - I “just” want to build a pretty standard, responsive, modern-looking UI. Ideally without too much boilerplate, in a framework that “feels good”, in a way that might at some point attract other contributors as well, if I get to the point of open sourcing.

Of course I could just reach for the most popular thing i.e. React, but that doesn’t seem to be the “hip” thing to use nowadays (or maybe I’m wrong? What do I know, I’m a backend dev).

But even if I choose a framework, there’s a million other libraries out there to choose as well. For instance, which UI library to choose? What about observability and state management and authentication and so on?

Sorry if this is a bit ranty. I am honestly just looking for an experienced frontend developer to point me in some direction (i.e. some set of frameworks/libraries; a “stack” if you will), so I can get out of this choice paralysis.

What would be your go-to stack for a new frontend project today?

  • tavernusmaximus@piefed.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    4 days ago

    I would first ask what you expect your frontend to do. Will your UI get live updates? What do you expect will be an average session time, minutes or hours?

    I forgot to elaborate why. My point being you might get what you need from fairly static HTML generated by a backend, with a sprinkling of JavaScript for interactivity (Progressive enhancement, gov.uk has more on that as an approach )

    • SorteKanin@feddit.dkOP
      link
      fedilink
      arrow-up
      1
      ·
      4 days ago

      fairly static HTML generated by a backend

      I don’t think this is a scalable, futureproof option. Neither is pure HTML/CSS/JS. I know you can get far with those things, but as another comment mentioned, what if I at some point want to turn it into a mobile app? What if I want to do some complicated thing that I didn’t anticipate ahead of time? An established framework seems more futureproof in that aspect.

      • tavernusmaximus@piefed.social
        link
        fedilink
        English
        arrow-up
        5
        ·
        4 days ago

        Counterpoint, what if you don’t end up doing or needing that? Then you’ve paid the cost of complexity and added maintenance burden to update dependencies for no reason.

        If you do end up needing a complex feature, perhaps the complexity can be isolated to just the part of your application that needs it? For example React can be used to render just parts of one page.

        For mobile apps, perhaps all you need can be accomplished as a progressive web app (which is “just” regular HTML, CSS and JS at the end of the day)? That way you don’t have to deal with or pay for app store distribution.

      • matsdis@piefed.social
        link
        fedilink
        English
        arrow-up
        2
        ·
        4 days ago

        This is orthogonal. If you want to do anything custom, it will often be easier to not use your JS framework at all for that part of the App. If you are going to use Tauri you will be using the Tauri API not the API of your framework. If you want stuff like touch input or show system notifications, you’ll use the browser’s APIs for that. If anything the framework will be in the way for lower-level stuff, and you always have the option to not use it for some part of your App.