A Rant about Front-end Development - eviltoast

Too good NOT to share.

My brothers and sisters in Christ I want you to know that I care about your souls enough to share these truths with you:

  • You don’t need JavaScript to make a web page.
  • You don’t need JavaScript to write styles.
  • You don’t need JavaScript to make an animation.
  • You don’t need JavaScript just to show content.
  • maegul (he/they)@lemmy.ml
    link
    fedilink
    English
    arrow-up
    15
    ·
    5 months ago

    But nah. These goobers got high off npm modules and did shots of JSX in the bathroom at lunch time.

    Fucking LoL!

    Anyone here have thoughts about doing basic interactive stuff with at most vanilla JS?

    • walter_wiggles@lemmy.nz
      link
      fedilink
      arrow-up
      12
      ·
      5 months ago

      I think basic or even complex stuff is fine in vanilla js.

      The problems show up as you scale the team and code base. You can do a large project in vanilla js but you’re going to have to solve a lot of the same problems frameworks/libraries have already solved. Maybe it’s worth it, maybe it’s not.

      • dunstabzugshaubitze@discuss.tchncs.de
        link
        fedilink
        arrow-up
        12
        ·
        edit-2
        5 months ago

        On the other hand:

        Most Frontends are not super interactive google tables like applications and never will be and frameworks won’t magically make your code maintainable or enable you to work with 50 other guys on that page that interacts with a simple CRUD-API, yet people choose a complex framework meant for huge projects and pile even more dependencies on to of it for that kind of stuff. it’s like using a fleet of 18 wheel trucks for grocery shopping, when a basket and a bicycle are really all you’ll need for that.

        i’d guess most websites would be fine and feel “modern” with html, css and a small library for ajax stuff, because doing that by hand is repetetive and error prone.

    • macniel@feddit.de
      link
      fedilink
      arrow-up
      7
      ·
      5 months ago

      Vanilla JS is perfectly fine to do basic interactive stuff. Data Binding is a bit trickier but can be achieved neatly with Web Components. I like it.

      • maegul (he/they)@lemmy.ml
        link
        fedilink
        English
        arrow-up
        3
        ·
        5 months ago

        Yea, I’m unclear on how you can take web components and still have widespread browser support (not knowing enough about their ins and outs).

        Plain template elements are widely supported and have been for ~10 years (which ideologically matters to me along the same lines as the top post’s article) … perhaps a little bit of hacking together can get you close with just that?

        • macniel@feddit.de
          link
          fedilink
          arrow-up
          3
          ·
          5 months ago

          Every browser released since 2020 supports this (custom elements that is), so I don’t see an issue with browser support.

          You mean the Html template Element? I’ve never really got that to work, but I also never seriously tried.

          • maegul (he/they)@lemmy.ml
            link
            fedilink
            English
            arrow-up
            2
            ·
            5 months ago

            Every browser released since 2020 supports this

            It’s a little paranoid of me, but I like the idea that a basic web app I make can be thrown onto any old out of date machine, where ~2015 or younger seems about right for me ATM.

            You mean the Html template Element? I’ve never really got that to work, but I also never seriously tried.

            Yea. From memory, it’s just an unrendered chunk of HTML that you can select and clone with a bit of JS. I always figured there’d be a pattern that isn’t too much of a cludge and gets you some useful amount of the way to components for basic “vanilla-js” pages, just never gave it a shot either.