• kingthrillgore@lemmy.ml
    link
    fedilink
    arrow-up
    27
    ·
    8 months ago

    I ended up using a static site generator for my personal site because I fucking hate JS and frameworks and WebComponents. The front page is 646 KB and it loads in 4 seconds. I’d love for it to be 1 second or less, but the fonts are a factor.

    And I shrunk the shit out of that background too with pngcrush so miss me with that.

    • autokludge@programming.dev
      link
      fedilink
      English
      arrow-up
      16
      ·
      8 months ago

      Haven’t done this type of optimizing in a long time, I had a quick look at the network graph for your front page (F12 dev tools in desktop browser), my understanding is it looks like you are getting blocked from loading additional resources (fonts + background) until your style sheets are fully read --pink line is document loaded i believe.

      It may be worthwhile to experiment with adding some preload links to the html template? or output? like below and assessing if it makes things faster for you.

      <link rel="preload" as="image" href="https://volcanolair.co/img/bg1-ultracompressed.webp" fetchpriority="high">

      <link rel="preload" as="font" href="https://volcanolair.co/fonts/Inter-Regular.woff2">

      <link rel="preload" as="font" href="https://volcanolair.co/fonts/Inter-Bold.woff2">

      ___

    • Phoenixz@lemmy.ca
      link
      fedilink
      arrow-up
      14
      ·
      8 months ago

      Honestly, 4 seconds is really slow, especially with static HTML. I built my first companies’ site myself, it includes a video on the front page and jquery, is built by PHP, and on descent Internet connections the front page will load in slightly over a second, other pages dip under that.

      There are loads of tweaks you can make to -any- site, and total amount of bytes really isn’t the only speed factor here.

    • TopRamenBinLaden@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      12
      ·
      edit-2
      8 months ago

      Not that you’d want to because you hate JS and web components and all that, and there’s nothing wrong with your website, but NextJS supports Static Site generation.

      So, JS and frameworks and webcomponents can get the job done for simple stuff nowadays. My portfolio page has a load time of 631 ms using the SSG built into NextJS, and its really similar to your website.

    • JasonDJ@lemmy.zip
      link
      fedilink
      arrow-up
      12
      ·
      edit-2
      8 months ago

      I love all your replies.

      You wouldn’t get these responses from stackoverflow.

      This isn’t even a programming or development community…it’s a general interest one.

      You didn’t even ask for help.

      • kingthrillgore@lemmy.ml
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        8 months ago

        I gotta say I came in here to flex and I learned so much. I am going to roll some of these changes really soon once I find out where to best add them to my Hugo template. I’m going to reply to some of them below to clarify some things:

        It may be worthwhile to experiment with adding some preload links to the html template? or output? like below and assessing if it makes things faster for you.

        This is the most interesting because I didn’t even know this was possible with HTML5, so I want to add this right away.

        I have a pixel 6 and notice some lag in scrolling. Could it be that you don’t use srcsets but instead huge screenshots no matter the device screen?

        The background is a large image in the CSS via background-image, I don’t know how easy it would be to change it to a srcset but I will give it a shot

        The fonts can be loaded from another file that ends in the cache, lowering load time next time.

        At the very least they need to load last because they are the largest burden

    • Venia Silente@lemm.ee
      link
      fedilink
      English
      arrow-up
      8
      ·
      8 months ago

      , but the fonts are a factor.

      I’m not sure if the possibility is there depending on your use case (eg.: you are exporting the fonts) nor if the cost of doing it would be worth the shot, but you can send minified versions variants of fonts, too.

    • flying_sheep@lemmy.ml
      link
      fedilink
      arrow-up
      4
      ·
      8 months ago

      I have a pixel 6 and notice some lag in scrolling. Could it be that you don’t use srcsets but instead huge screenshots no matter the device screen?

    • bufalo1973@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      8 months ago

      The fonts can be loaded from another file that ends in the cache, lowering load time next time.