The coming three to four months will be a bittersweet period for us — we are saying goodbye to NativeBase.
But this is not the end of the road for the awesome community you are a part of.
It starts a new journey with a new framework, called gluestack-ui (a complete rebuild of Nativebase).
We have been working on this since December 2022, and are finally ready to share this news with you.
So this blog, we explain
- Why are we writing NativeBase from scratch
- What is gluestack-ui, and
- What it means for the current users of NativeBase
NativeBase was built to provide everything a developer needs to build with React Native. We added styling libraries, components, APIs, universal functionalities, and many other features.
But as the library grew, what made NativeBase great initially, became heavy baggage for users. Performance, usability, and maintainability issues started coming in in the later parts of 2022.
The problems can be categorized into three parts.
- Performance — We packed in too many features. This led to performance issues when compared with pure React Native.
- Maintainability — The complex styling engine and component library needed different APIs. This made it difficult to maintain the library and bring in public contributors.
- Large Bundle Size — We packed all the components and features into a single bundle. To remove unused bundles on build time, tree-shaking was needed. This led to massive bundle sizes for just the NativeBase components.
Our first instinct to fix NativeBase was to solve individual issues. But soon, we realized that it would be just patchwork. A real solution would be to rebuild NativeBase from the groundwork using the lessons we had learned while it…and that is what we did.
gluestack-ui is a complete rebuild of NativeBase, with all the positives and none of the negatives. It is universal, comes with optional styling, and is extremely high performing.
We have already started using gluestack-ui in our app development projects. The results are awesome.
- You get the option for incremental adoption. There is no longer a need to carry the baggage of necessary bundles. You can use whatever you want and leave the rest.
- For increased performance, gluestack-ui is unstyled. The styling library has been kept separate. It is called gluestack-style and is now in beta. To check it out click here.
- The CLI is automated. This makes it easier to edit projects without hampering the quality.
Check out the architecture below ⬇️
First and foremost, thank you for being with us all these years and supporting NativeBase. But with gluestack-ui, we have the potential to build better. That is why…we highly recommend you join us in using gluestack-ui.
NativeBase will be phased out soon and we will be not shipping new updates to the library. There will only be security patches and fixes. Very soon, we will be sharing an update on how to transition from NativeBase to gluestack. Follow us on Twitter @gluestack to stay updated.
While gluestack-ui will fill NativeBase’s shoes and gluestack-style take over the styling, they are part of a universal ecosystem we are building. It is called gluestack.
Once completed gluestack will be a comprehensive suite of powerful tools and frameworks designed to simplify and accelerate full-stack development. The motivation is to ship ideas to production in as little time as possible.
The ecosystem will include a fullstack and universal framework with batteries included (like APIs, Auth, and CRONs). To support that, we are building a DevOps management platform that takes your app to servers and phones through a common pipeline and deploys to the server of your choice.
The other parts include low-code no-code tools, a plugin repository, a design system build, a hosting platform, a universal project runner, and marketplaces.
There will also be an LTS and enterprise support. The plan is to make it a self-sustainable model with a dedicated vision and a roadmap. To go beyond an open-source project, with support and enterprise options.
To know more, visit the gluestack website.