Optimizing page (with link)

Hi WeWeb Community,

Newbie here and I’ve been working with WeWeb for a little over a week now to try and create a new backend and frontend website for my small winemaking business.

In the past, I have dabbled with development and mostly Vue.js/Nuxt over the past couple years – so the way WeWeb worked appealed to me.

As I’m building the page for our wine list, I’m noticing some slowdowns – and looking to those of you more experienced to find some opportunities for improvement. Here is a link: https://9da545cd-24e7-4d62-9c26-e32c844ce552.weweb-preview.io/wines/

Some notes on how it’s put together:

  • The page currently loads 1 static collection of all the varietals, with products as subobjects. The varietals are displayed as accordions and the products are lists inside each accordion.
  • The search box and filter buttons work using custom variables, but also seem a tad slow (debounce of 300ms is on).
  • All data is pulled from Supabase.

Ultimately, what I’m looking to achieve with this page:

  • An organized, searchable and filterable list of all the wine varietals.
  • A quick loading experience for visitors. If needed, loader/animation in key areas.

Any suggestions welcome.

Thanks! Cheers,

Kris

1 Like

If you want to make it as a market place for your business i would recommend to try other products as the seo is not optimal for weweb app, if its an internal tool for your company its a great platform to do so

I’ve just redeployed the preview site using the new single collection. It’s definitely a bit smoother, but still I think there might be some ways to optimize.

The page as it is now, shouldn’t change much in terms of number of varietals. A few may be added or removed, but overall number should stay roughly the same.

New questions would be:

  • Is a static collection faster than a dynamic collection? I would assume so, but why not ask.
  • Is there a way to have the page load quicker, and a small loader which displays while waiting for the data?
  • The ‘clear filters’ button seems really slow. Has a simple workflow to reset 3 variables. I think the delay is that its reloading the full list, and again a loader would help here.

If I can sort these things out, it should work for my needs. The rest of the pages would not contain as much data or be simple pages like about, contact, ect.

Thanks!

Hi WineWorks and welcome to the community :waving_hand:

Your site looks great and I think it is fast!

But if you want to optimize even further I think @Broberto has provided some optimization tips in the past, let’s see what he has to say.

I think the reset might be slow because its rendering all of the data at once you might try this

2 Likes

Hi @WineWorks

Overall, both static collections and dynamic ones load content on the client side. So users will need to wait for the JavaScript to render the data.

Although pre-rendering has been removed, with static collections, each page has its own pre-generated index, so all metadata is available from the very first call. This improves SEO a bit.

Static collections are also helpful when you want to avoid triggering API calls every time a user visits a page. For example, if your data is stored in Airtable, you don’t want each user to hit the Airtable API. With static collections, the data is fetched once at the time of publishing and then served statically.

As for maximizing page load speed, we have extensively written about this. You can find more details here: https://x.com/i/web/status/1720084738730508414

For your loader question:

  • Add a loading state variable
  • Show skeleton accordions while data loads

Hope that helps!

2 Likes