0.1.12 • Published 10 months ago

@refinenative/expo-router v0.1.12

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

this project is still in development, and not ready for production use yet.

Build web and native crud apps 3x faster by leveraging the power of React Native and Refine.An open-source React native framework developed to make cross-platform development easier.

How to use

Start by creating a new expo project using the expo-cli, and add expo-router to your project, you can follow the official documentation for more details.

After that, install the following packages:

yarn add @refinenative/expo-router @refinenative/react-native-paper @refinedev/simple-rest @refinedev/core

Then, inside your layout.tsx file, add the following code:

import { Refine } from '@refinedev/core'
import dataProvider from "@refinedev/simple-rest";
import routerProvider, { DrawerLayout } from '@refinenative/expo-router'
import { DrawerContent, ReactNavigationThemeProvider, Header } from '@refinenative/react-native-paper';

export default function layout() {
    return (
        <Refine
            routerProvider={routerProvider}
            options={{
                reactQuery: {
                    devtoolConfig: Platform.OS === "web" ? undefined : false,
                },
                disableTelemetry: true
            }}
            dataProvider={dataProvider("https://api.fake-rest.refine.dev")}
            resources={[
                {
                    name: "blog_posts",
                    list: "/blog-posts",
                    show: "/blog-posts/show/:id",
                    create: "/blog-posts/create",
                    edit: "/blog-posts/edit/:id",
                    meta: {
                        canDelete: true,
                        icon: 'calendar'
                    }
                },
            ]}
        >
            <ReactNavigationThemeProvider>
                <DrawerLayout
                    DrawerContent={() => <DrawerContent />}
                    Header={Header}
                />
            </ReactNavigationThemeProvider>
        </Refine>
    )
}

Now you can start using the features of Refine just like you would do in a web project.

TODO

[] Write unit tests [] Automate the build & release process [] Add more examples [] Write documentation [] Add more features to @refinenative/react-native-paper [] Support react-navigation and other navigation libraries [] Build an inferencer for react-native-paper [] Support other UI libraries like react-native-elements

Contribution

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

Licensed under the MIT License

0.1.12

10 months ago

0.1.7

10 months ago

0.1.3

10 months ago

0.1.2

10 months ago

0.1.1

10 months ago

0.0.2

11 months ago

0.0.1

11 months ago