Info

Why "Nebula"


Responsive values in NebulaKit are mobile-first and forward-only.

  • A value defined at base applies to all breakpoints

  • A value defined at a breakpoint applies from that breakpoint upward

  • Values are never unset automatically at later breakpoints

Any property typed as RespValue and marked as responsive in the props table can accept either a single value or an object of breakpoint-specific values, like in this example where padding changes between the base and md breakpoints.

Result:

  • base, sm - 10px

  • md, lg, xl - 50px

When combining responsive and non-responsive props, the more specific one wins.

In the above example, paddingBottom isn't a breakpoint object, so it applies to all breakpoints by default. Because it's more specific than padding, its value overrides the final bottom padding at every breakpoint.

If a value is defined only at a later breakpoint, it does not affect earlier ones:

Result:

  • base, sm - no padding applied

  • md, lg, xl - 50px

Responsive values can override forward, but they never cancel earlier values. If you need a different value at a later breakpoint, provide it explicitly:

This model keeps responsive behavior predictable, avoids hidden defaults and ensures styles never change implicitly when breakpoints shift.