The Restyle library provides a type-enforced system for building UI components in React Native with TypeScript. It's a library for building UI libraries, with themability as the core focus.
This library assumes that the UI is built upon a design system that (at the very least) defines a set of colors and spacing constants that lays as a foundation. While the library acknowledges that there can be exceptions to the system by allowing any style to be overridden, it keeps the developer most productive when one-off values are kept to a minimum.
Add the package to your project using one of the following:
yarn add @shopify/restyle
npm install @shopify/restyle
npx expo install @shopify/restyle
See Usage in the documentation, or see below for the fixture app.
The fixture is an example app to showcase the library's usage.
To run the Documentation site locally, please follow the steps below:
cd documentation
yarn
yarn start
Read more about migration to v2 here
Restyle is heavily inspired by https://styled-system.com.
For help on setting up the repo locally, building, testing, and contributing please see CONTRIBUTING.md.
All developers who wish to contribute through code or issues, take a look at the CODE_OF_CONDUCT.md.
MIT, see LICENSE.md for details.