When designing a malleable system, what kinds of components do you need?

· Bits and Bobs 9/9/24

There are a small number of extremely common, moderately complex components that are horizontal, finicky to create, and general purpose.

A candidate list:

Table View

Image Collection

Rich Text Editor

Code Editor

Calendar

Indentable Outline

Map

These are the foundations of the UI that tinkerers can glue and wire together.

You want to provide these as built-ins that everyone can take for granted, and that can be created to a high polish.

Everything else is glue and glop.

Glop is rarely polished, but if the components that are the majority of the UI are polished, and the glop just connects and fills in data, then the result can still be reasonably polished.