Spindle 23.08
Federico Peyrani
Federico PeyraniFrontend Engineer - ContentWise
Selene Malosso
Selene MalossoFrontend Engineer - Akamas

It's been almost two months since Spindle was first announced and it is saddening to know that have been no updates on the project ever since. We had a lot of new features planned, but we got caught up in other projects and had to take a hiatus from working on them. Now we're finally out of the woods with that, so before August slips away it's time to officially announce our latest release: Spindle 23.08!

What's new

We are working on expanding the number of components included in the base package and we have plans to keep doing that so that Spindle can become the all-in-one solution for all your UI needs. This time, we're bringing the first batch of form controls to Moviri developers, which includes the Select component, both the TextField and TextArea component to manage text inputs and the Checkbox. We have decided to start with what can be considered "essentials" for enterprise applications and focus in particular on those components that you'd expect to see when filling out a form and you can expect more in the future (we make heavy use of them here, don't blame me, if you're not then you're not doing it right). Under the hood, you'll also find some minor adjustments and overall improvements, but I'll leave the boring details in the changelog below.
Do you know those dropdown menus where users can pick one option from a list? That's the Select component! It's a real game-changer when it comes to making data entry structured and user-friendly. Whether the options you need to provide are static or come from a dynamic list, you'll find using it a breeze.
search
Simple and effective, the TextField component offers a single-line text input field. Perfect for collecting short and sweet information like usernames or email addresses. And if your application supports it, why not use them to make compelling search bars? Add a leading icon and set an appropriate placeholder text: that's all you'll need to annoy your trusty backend developer with the request to implement a text search API.
For when users need to spill their thoughts or provide lengthy comments, we've got the TextArea component. It allows for multiple lines of text, making expression effortless! And it's particularly useful when users need to input variable-length descriptions. Its special property autosize lets it automatically resize to wrap the text inside it, no matter its length (the generated responses from those large language models everyone keeps talking about will feel right at home with it).
And lastly, joining the roster, the little hero that is the Checkbox. Use it to gather a decisive "yes" or a striking "no", or, if you're the one to answer "it depends" to everything… just use it to display an indeterminate state.

What's coming next

As anticipated, you can expect a new wave of components for your forms soon in an effort to make Spindle as comprehensive as possible for the web applications we at Moviri are used to seeing. We have already laid out the details and I am glad to say that they are already being actively worked on. But new stuff doesn't stop there! Look forward to meeting other components as well, new customisation options, stylistic flavours and quality-of-life improvements geared towards the development experience, which we know all too well to be otherwise frustrating at times. We're also gradually bringing improvements to already introduced components as Spindle is starting to seep more into our applications and new possibilities for improvement are sprouting. That's that for Spindle 23.08! You can check out the getting started guidecall_made if you need to spin it out for the first time or update to the latest version of @moviri/spindle-components to test out the new features, or head to the components documentationcall_made if want to learn more on how to use them. See you in the future,
Federico.

Full changelog

PackageOld versionNew version
@moviri/spindle-components0.2.00.3.0
@moviri/spindle-theme0.1.00.1.1

Added:

  • arrow_right_alt Select component.
  • arrow_right_alt TextField component.
  • arrow_right_alt TextArea component.
  • arrow_right_alt Checkbox component.

Changed:

  • arrow_right_alt Changed how the rendering of the Drawer component is handled: now the component is automatically mounted on the first render if isOpen is true, which will cause an exception if attempting to render it as open on the server. Conversely, if isOpen is set to false, the component will delay its rendering until its state changes. This allows us to skip the re-render on the client during hydration which was kept to allow server-side rendering to coexist with the client-side without extra configurations needed.
  • arrow_right_alt Property type of button now defaults to button instead, the variant (primary, secondary or text) is now specified by setting the variant name as true instead.
  • arrow_right_alt The Drawer component now makes use of react-aria.

Fixed:

  • arrow_right_alt Enabled Typescript's strict mode in @moviri/spindle-components which was previously disabled.
  • arrow_right_alt Improved the stability of nested drawers. Now drawers can be also be closed out of order, and not necessarily from the one that is on top.
  • arrow_right_alt The close icon of the Drawer component now fades in and out when the drawer is opened or closed, instead of appearing and disappearing abruptly.