Skip to content

s-ong-c/dooboo-ui

 
 

Repository files navigation

dooboo-ui

React Native UI components built by dooboolab

Supports Expo iOS Supports Expo Android Supports Expo Web

Npm Version Downloads CircleCI codecov License

We love react-hooks and willing to share our react-native ui components built in functional components using hooks. Also the dooboo-ui is built on top of our favorite stacks like [styled-components], [typescript], jest, react-testing-library, expo, storybook, and so on.

Contributing to dooboo-ui

dooboo-ui

  • See also
  • Contributing
    • Please run yarn pre so that the packages are prepared.
      • If you are having trouble, try to run yarn install-packages.
    • Try to make awesome UI components and test them in storybook. Ensure to test in platforms we provide which are iOS, android and web. Then it's all good to go for pull request. Give it a try 🌼.
  • While implementing UI components you should run yarn watch in order to build typescript files dynamically while implementing. This is currently the best solution to sync with your typescript code using package.json. If you find something more efficient, please give a pull request.

Usage

We aim to support react-native ui components in all platforms and we are currently targeting iOS, android and web. If you read issue on plan for unifying dooboo-ui, you can see in more detail how we want to drive this project.

Compatability

package version
react >=16.9
react-native >=0.58
styled-components >=4.4.0

List of components in dooboo-ui

You can use most light weight components in dooboo-ui by importing it which are listed above. However, we also support individual imports using seperate installation which are more UI heavy. Those packages start with @dooboo-ui/* like @dooboo-ui/gifted-chat and is listed below.

List of independent components in @dooboo-ui/*

Below elements are not included in dooboo-ui package since it depends on other packages that may overload its package.

Troubleshoot

Workaround when you face error in expo web

You need to set webpack for using "dooboo-ui" in expo-web.

  1. Install @expo/webpack-config in your expo's project. yarn add @expo/webpack-config or npm install @expo/webpack-config

  2. Create webpack.config.js in root path and Add below code. See issue below for more details.

    const createExpoWebpackConfigAsync = require('@expo/webpack-config');
    
    module.exports = async function(env, argv) {
      const config = await createExpoWebpackConfigAsync(
        {
          ...env,
          babel: {
            dangerouslyAddModulePathsToTranspile: [
              'dooboo-ui',
            ],
          },
        },
        argv
      );
      return config;
    };

About

React Native UI Components with react-hook (web, ios, android)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 96.3%
  • JavaScript 3.7%