Styling that will be needed - tremho/thunderbolt-common GitHub Wiki

Existing prototype

Review and tweak any appearances of the existing bits:

  • titlebar, toolbar, indicators

    • Probably want to stack indicators the same way as tools in constrained mode to give even more room for title
    • Consider moving menu box to left of tools instead of right.
  • SimpleButton, SimpleLabel

    • Button is okay, but a little weak.

Themes

We can have themes for different aesthetics. Themes can be tailored to fit destination, using the platform class identifiers (macos, windows, linux, ns-android, ns-ios) if we want to make things look like they "were born there", or we can make themes be entirely self-defining.

Dark mode

{N} uses the classes .ns-light and .ns-dark to specify this system state.

Electron support looks like it will require some supporting code but this should allow us to set our own class identifiers here (".light" and ".dark") in much the same way.

Layout containers

Currently scheduled layout containers include stack (div, span), flexbox, and grid layouts per some of the proof-of-concept exercises,

We should think of other types of containers (lists, galleries, etc)

Responsive Layout Templates

In addition to, and instead of too many overly-specific layout containers, some general layout stacking types would be great.

Like a smaller upper block that sits centered on top of a lower section in normal mode, that switches to the left in wider contexts and becomes a raised corner insert in contexts constrained by both. That's just an idea, but the thought is that there would be a ready collection of these semi-generic groupings that could be used in a variety of ways. The other key concept about these containers is that they are not necessarily full-screen. They should fit within a section and respond to the size of that section (which may or may not be less than the full screen). This will allow complex bespoke responsive layouts to be constructed in an ala carte fashion without resorting to low level handling directly.