Giter Site home page Giter Site logo

react-native-design-mode's Introduction

Design Mode for React Native

Design your views easily.

  • The goal is to create a simple developer interface to create views without having to navigate through app flow.

  • By default, design mode is always shown in development mode and always hidden in production. To override this behavior, set the enabled property of DesignMode.

  • Toggle design mode simply by pressing the floating button.

Installation

npm install react-native-design-mode --save
- or -
yarn add react-native-design-mode

Usage

Single view

import {DesignMode} from "react-native-design-mode";

const App = () => {
    return (
        <>
            <AppContainer />
            <DesignMode>
                <YourAwesomeView />
            </DesignMode>
        </>
    );
}

Single view that needs preparation (auth, etc)

import {DesignMode} from "react-native-design-mode";

const App = () => {
    return (
        <>
            <AppContainer />
            <DesignMode prepare={() => auth()}>
                <YourAwesomeView />
            </DesignMode>
        </>
    );
}

Multiple views

import {DesignMode, DesignPage} from "react-native-design-mode";

const App = () => {
    return (
        <>
            <AppContainer />
            <DesignMode>
                <DesignPage title={'Awesome View'}>
                    <YourAwesomeView />
                </DesignPage>
                <DesignPage title={'Perfect View'}>
                    <YourPerfectView />
                </DesignPage>
            </DesignMode>
        </>
    );
}

Multiple views that require preparation (auth, etc)

import {DesignMode, DesignPage} from "react-native-design-mode";

const App = () => {
    return (
        <>
            <AppContainer />
            <DesignMode>
                <DesignPage title={'Awesome View'} prepare={() => auth()}>
                    <YourAwesomeView />
                </DesignPage>
                <DesignPage title={'Perfect View'} prepare={() => auth()}>
                    <YourPerfectView />
                </DesignPage>
            </DesignMode>
        </>
    );
}

Cleaner usage

// ./designs/AwesomeViewDesign.js
export const YourAwesomeViewDesign = () => {
    return (
        <DesignPage title={'Awesome View'} prepare={() => auth()}>
            <YourAwesomeView />
        </DesignPage>
    );
}

// ./designs/PerfectViewDesign.js
export const YourPerfectViewDesign = () => {
    return (
        <DesignPage title={'Perfect View'} prepare={() => auth()}>
            <YourPerfectView />
        </DesignPage>
    );
}


// ./App.js
import {DesignMode, DesignPage} from "react-native-design-mode";
import {YourAwesomeViewDesign} from "./designs/AwesomeViewDesign";
import {YourPerfectViewDesign} from "./designs/PerfectViewDesign";

const App = () => {
    return (
        <>
            <AppContainer />
            <DesignMode>
                <YourAwesomeViewDesign />
                <YourPerfectViewDesign />
            </DesignMode>
        </>
    );
}

react-native-design-mode's People

Contributors

bayramito avatar murat-mehmet avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.