Component Library

I know that a custom component library has been mentioned as a feature request before and that would be awesome, especially as we could share them easily with the Retool Community.

However, being able to save a group of Retool components together and save them to a library would be awesome. Sharing with the community would be cool, but I'd be more interested in having it just for our account so I can reuse groups of components I have created across apps. I know I can copy and paste between apps right now, but a library would be a much smoother process.

An example of a component I would like to do this would be a client updater. This simple form hooks to a single query that updates our client database. It also auto-populates the data in the input fields based on a selected client (whether it be from a dropdown or a table). As we expand our use of Retool, we will have multiple apps that offer the ability to update the same client database. Although this is a simple collection of components, adding the ability to easily drop this group into a new app would be awesome.

@alex brought up the ability to edit the component from a central component creator page. I hadn't thought that far and I think that would be ideal. To answer @alex's question, I'd like the option to both. Being able to edit the component group in one place and have that populate across apps would be fantastic and huge time saver for larger updates. I'd also like to be able to edit them indivudally, even if it is just a toggle switch for whether it should be tied to the larger group component or not.

@ibgoldbergs brought up another great example with our credit card form.

2 Likes

Hey @DakotaB, thanks for mentioning this! We are exploring this idea internally over the next few weeks. Would you mind sharing an example of a group of Retool components that you would reuse across apps? Maybe a screenshot if you can – that would be great!

Also, if you shared this component groups across 2-3 apps, would you want them to update from one place (i.e. a component creator page that pushed updates out to apps that used the component group) or be independent from each other once shared?

1 Like

Cheers @alex. Updated my post with a response and an image.

1 Like

@alex another great example would be saving a built credit card form. You have a braintree integration, but we use Chargify. No need for you to go out and build a chargify form if we had the ability to save a group of components with all of the different fields we need, and the API calls we have built in.

2 Likes

Thanks for curating the post and adding in people’s feedback as they leave it!

1 Like

I can add another use case here if you’re still looking: I have an autocomplete “widget” that we put on many of our apps, allowing us to type in partial user info (email, name, ID, etc) and see potential matches before selecting the one I’m interested in. It’s effectively a Dropdown + Query, but re-building it by hand every time is getting tedious and error prone :slight_smile:

+1 - This would save much time too.

1 Like

Hey folks, we’ve actually just released a Beta feature to accomplish this – Modules (see docs). Modules let you reuse groups of components and queries between Retool apps.

It should already be enabled for everyone. Please check it out and let us know if you have any feedback!

1 Like