Introducing Carnation
April 4, 2023
Sharing code between web and native platforms is still a relatively new concept. We've been blessed by the hard work of open-source libraries like React Native for Web (opens in a new tab) and Tamagui (opens in a new tab), and now it's time for another player to enter the game: Carnation.
Carnation is an accessible framework for building universal React design systems. What sets Carnation apart is its web-first ideology: all components are defined with semantic HTML elements instead of View
and Text
components. This bakes accessibility into your design systems from the start.
Carnation also has a clear idea of its purpose: building universal design systems. At our core, we believe the best candidate for shared code are the styles, components, and patterns that make up your app. Beyond that, how these components are arranged in a layout should be decided based on the platform the app is built for. (We also have a few ideas of how to share business logic, but we'll save that for another day 😉)
Today, we are releasing Carnation in early alpha. We feel that our vision of what Carnation can be is clear and we would love for others to join in our vision! That being said, Carnation is not yet production ready and using it is at your own risk.
If you have any questions or ideas, feel free to open an issue on our GitHub.
Happy coding! 👋