Are there some basic components missing?

I am new to Anvil, but I really like what I have seen so far. However, I am a bit curious whether there are a few basic widgets or components missing. For example progress bars and sliders, aren’t such things need-to-haves in an UI framework?

I am aware of the Anvil-Extras project, but why aren’t these components not part of Anvil itself?

1 Like

At a guess, “why have a dog and bark yourself?”

Which makes me a dog, I suppose.

1 Like

It depends on the needs of the app. I haven’t used them (or missed them) in mine.

Of course, not every widget is required in every app. But if I think of any major UI framework (both web and client), there is some kind of “basic widgets” all these frameworks support out of the box. I don’t want to rant here, just interested to know whether there is a special reason for these missing widgets …

2 Likes

Anvil is so much more than a UI framework, it may not be an apt comparison in the first place.

Should UI frameworks be faulted for “missing” a complete IDE, cloud-based server architecture, and database implementation, as part of the framework? (I’ve left out a lot that Anvil provides out-of-the box.)

Edit: But to be fair, only Anvil’s architects are equipped to answer your question.

1 Like

I agree with @p.colbert that Anvil is so much more. I also think that the purpose of Anvil Extras is to make more UI components that basic Anvil doesn’t have – and the staff doesn’t have time to implement – that the community wants. I don’t think that’s a problem IMHO – every major framework usually has a plethora of packages to work.

I think things like Anvil Extras and the Anvil Firestore integration are great signs of Anvil’s health because it shows the community’s buy in to the platform.

It’s also possible to use any third party front end tool set, and connect to Anvil HTTP endpoint functions.

1 Like

I agree with @mfb.

Why can’t we have ALL of the Material 3 widgets: Components – Material Design 3?

I don’t like the argument that Anvil is more than a framework, etc, and therefore the UI is not so important.

The UI is important for an app. Also anvil apps. Period.

In my case, it’s more a recognition that they’re all important, to me, and to many.

And if there’s a widget that’s important enough to me, I build it. In Anvil. Or I find a third-party component to use and/or wrap.

Or, when I don’t have the time for that, I do without. Like Anvil itself, not all my work, or my app’s worth, is in the user interface.

A couple of points to add -

1 - Anyone can make custom components for others to use. But the community cannot create a new Anvil Editor or do a complete backend redesign or implement all these really useful features. I think the entire community will rather prefer Anvil to work on more such features than implement components that already exists as third party.

2 - The more components you add to Anvil, the more will be the base size of Anvil Apps. Since Anvil Apps are already SPA, minimising the loading time is quite important. And if an app doesn’t even use those components, that will be a waste of resources.

With all that being said, I will rather suggest Anvil to do more improvements to custom components and their discovery.

2 Likes

We hear you! All I can say right now is “watch this space” :wink:

(And use anvil-extras; it’s great!)

3 Likes

I also agree with @mfb .

I believe there are a few more widgets that should be included natively—especially to help new users onboard quickly.

Not everyone here is an Anvil expert, familar with additional packages/HTML/JS, etc.

The forum has quite a number of users looking for a slider bar for example. That could be a signal.

I used Anvil for years, built both a slider and a progress bar. That took quite some time for me personally.

But yes, as it stands Anvil already gives us a lot! So it’s not a major issue for me.

1 Like

Anvil is a cross-theme platform, supporting 5 different themes at the moment. Including M3 specific widgets in the older themes would require work back porting whatever HTML/CSS/Javascript is involved in those components into the older themes. Not impossible by any means, but not a trivial amount of work.

Personally, I’m fine being able to include third-party libraries for the components I need when I need them. I’m happier that I now have more efficient data tables than I would be if I’d gotten a dozen more components.

3 Likes