I was building a screen inside a CupertinoApp last week and dropped a Wind text field into it. It crashed.

Wind is utility-first styling for Flutter: you write className strings like p-3 border rounded-lg instead of nesting six widgets by hand. But WInput, the one input widget, still leaned on Material under the hood. Outside a MaterialApp it threw. The workaround was ugly: wrap a Cupertino screen in a MaterialApp just to render one field.

So in Wind 1.1.0 I rebuilt it. WInput is now Material-free.

The problem

WInput used to wrap Material's TextField, which needs a Material ancestor for its theme and ink. Drop it under a CupertinoApp or a bare WidgetsApp and you got a layout exception, not a text field. For a utility-first library that is supposed to style anything, depending on Material to render an input was the wrong shape.