Tech, ExplainedCloud platforms and developer tools
Product

UI component libraries

Grids and charts nobody should build twice.

BEFORE ITAFTER ITUI component librariesProgressCOVERSData gridsChartsFormsThemesA developer adds acomponent to a screen inthe app's own codeA finished screen in thecompany's own app, built fromtested partsBEFORE ITAFTER ITUI component librariesProgressCOVERSData gridsChartsFormsThemesA developeradds acomponent to ascreen in theapp's own codeA finished screenin the company'sown app, builtfrom tested partsBEFORE ITA developer adds a component to a screenin the app's own code↓UI component librariesProgressData gridsChartsFormsThemesAFTER IT↓A finished screen in the company's own app,built from tested parts
A Kochi developer drops a ready-made data grid, a chart and a date picker into a stockbroker's back-office screen, and the grid draws only the 30 visible rows out of 50,000 trades.
opens a page inside this one a page in the same scene a page in another scene a concept page a label only, with no page

UI component libraries are collections of ready-made parts of a screen, such as data grids, charts, forms, date pickers and buttons, that developers drop into an app instead of building each one themselves. UI stands for user interface, the part of an app that people see and use. A component is one such part, written once and used on many screens.

Why buy them? A simple button is easy to build. A data grid is not. A data grid is a table that sorts by any column, filters, groups rows, lets the user edit a cell and exports to Excel. It must stay fast with thousands of rows. It must work with a keyboard as well as a mouse, and with the screen readers that blind users depend on. Building all of that well takes a team months. A component library sells it ready and tested.

Here is a typical case. An IT services company in Kochi is building a back-office screen for a stockbroker. Employees in the broker's operations team use it to check the day's trades. On a busy day, there are 50,000 trades. The developer adds the library's grid to the screen with about 20 lines of code. She tells the grid where its data comes from, an API of the broker's trading system, and which columns to show. The grid can now sort, filter and export.

To keep the screen fast, the grid uses a method called virtual scrolling. It draws only the 30 rows that fit on the screen. As the user scrolls, it fills those same 30 rows with the next trades. So the browser never has to draw all 50,000 rows at once.

She also adds a chart of trades by hour, and a date picker that shows dates in the Indian day-month-year order. All three components share one visual theme, so the screen looks consistent. The broker's colours are set once, in the theme.

Paid libraries are usually sold with a yearly licence for each developer. Free open-source libraries also exist, and many teams use them. The paid libraries offer support, regular updates for new browser versions, and a wide set of complex components, such as grids, schedulers and spreadsheets.

How is a component library different from a low-code platform? A component library is used by developers, inside the app's own code. A low-code platform lets people build a whole app by dragging parts onto a page, with little code. Many low-code platforms are themselves built from such components. A newer approach, generative UI, has an AI model put screens together on the spot, in answer to what the user asks.

Ready-made components are one of the building blocks described on the page on API and low-code development.

Who builds it

Tech, Explained is a part of ingrid.fyi. Every page explains one piece of technology in plain words.