Convert Figma logo to code with AI

jondot logoawesome-react-native

Awesome React Native components, news, tools, and learning material!

34,488
3,978
34,488
83

Top Related Projects

A framework for building native applications using React

Material Design for React Native (Android & iOS)

Cross-Platform React Native UI Toolkit

A complete native navigation solution for React Native

17,313

Infinite Red's battle-tested React Native project boilerplate, along with a CLI, component/model generators, and more!

Customizable Icons for React Native with support for image source and full styling.

Quick Overview

The jondot/awesome-react-native repository is a curated list of awesome React Native components, libraries, and resources. It serves as a comprehensive guide for developers working with React Native, providing a wide range of tools, libraries, and best practices to help build high-quality mobile applications.

Pros

  • Comprehensive Collection: The repository covers a vast array of React Native-related resources, including UI components, state management libraries, navigation solutions, and more, making it a one-stop-shop for React Native developers.
  • Active Community: The project has a large and active community, with frequent updates and contributions from developers around the world, ensuring the content remains relevant and up-to-date.
  • Organized Structure: The repository is well-organized, with clear categorization and tagging, making it easy for developers to quickly find the resources they need.
  • Detailed Descriptions: Each entry in the repository includes a brief description, making it easier for developers to understand the purpose and functionality of the listed resources.

Cons

  • Overwhelming Choices: The sheer number of resources listed in the repository can be overwhelming for new React Native developers, making it challenging to identify the most suitable tools for their specific needs.
  • Varying Quality: While the repository aims to curate high-quality resources, the quality of the listed projects can vary, and some may not be actively maintained or well-documented.
  • Outdated Information: As with any curated list, there is a risk of some resources becoming outdated or no longer relevant over time, requiring regular maintenance to ensure the information remains current.
  • Subjective Curation: The selection of resources in the repository is inherently subjective, and developers may have different preferences or needs that are not fully represented in the list.

Code Examples

This repository is a curated list and does not contain any code examples. It is a reference guide for React Native developers to discover and explore various libraries, tools, and resources.

Getting Started

As this is a curated list and not a code library, there are no specific getting started instructions. However, developers can follow these general steps to make the most of the jondot/awesome-react-native repository:

  1. Browse the Repository: Explore the different categories and sections of the repository to get an overview of the available resources.
  2. Identify Your Needs: Determine the specific features, libraries, or tools you require for your React Native project.
  3. Explore Relevant Entries: Dive into the entries that match your requirements, read the descriptions, and investigate the provided links to learn more about the resources.
  4. Evaluate and Compare: Compare the listed resources, considering factors such as documentation, community support, and compatibility with your project's needs.
  5. Integrate and Experiment: Once you've identified the suitable resources, integrate them into your React Native project and experiment with their functionality.
  6. Contribute and Engage: If you find a resource that is not listed or have suggestions for improving the repository, consider submitting a pull request to contribute to the project.

Competitor Comparisons

A framework for building native applications using React

Pros of React Native

  • Official repository maintained by Facebook, ensuring up-to-date and reliable source code
  • Comprehensive documentation and extensive codebase for the React Native framework
  • Direct access to the latest features, bug fixes, and improvements

Cons of React Native

  • Large repository size, which can be overwhelming for newcomers
  • Focuses solely on the framework itself, lacking curated resources and community contributions
  • May require more time to navigate and find specific information or components

Code Comparison

React Native (framework implementation):

import React from 'react';
import { View, Text } from 'react-native';

const HelloWorld = () => (
  <View>
    <Text>Hello, World!</Text>
  </View>
);

Awesome React Native (resource listing):

## Components

- [react-native-elements](https://github.com/react-native-elements/react-native-elements) - Cross-Platform React Native UI Toolkit
- [react-native-vector-icons](https://github.com/oblador/react-native-vector-icons) - Customizable Icons for React Native

Summary

React Native is the official framework repository, providing the core implementation and documentation. Awesome React Native is a curated list of resources, libraries, and tools for React Native development. While React Native offers the latest framework updates, Awesome React Native provides a community-driven collection of valuable resources for developers.

Material Design for React Native (Android & iOS)

Pros of react-native-paper

  • Comprehensive UI component library specifically designed for React Native
  • Follows Material Design guidelines, ensuring a consistent and modern look
  • Actively maintained with regular updates and improvements

Cons of react-native-paper

  • Limited to Material Design aesthetics, which may not suit all app styles
  • Steeper learning curve for developers unfamiliar with Material Design principles
  • May increase app bundle size due to the inclusion of many components

Code comparison

react-native-paper:

import { Button } from 'react-native-paper';

const MyComponent = () => (
  <Button mode="contained" onPress={() => console.log('Pressed')}>
    Press me
  </Button>
);

awesome-react-native:

// No direct code comparison available as awesome-react-native is a curated list,
// not a component library. It would typically link to various libraries or components.

Summary

react-native-paper is a comprehensive UI component library for React Native, following Material Design guidelines. It offers a wide range of ready-to-use components but is limited to Material Design aesthetics.

awesome-react-native, on the other hand, is a curated list of resources, libraries, and tools for React Native development. It provides a broader overview of the React Native ecosystem but doesn't offer components directly.

Developers should choose based on their specific needs: react-native-paper for a complete Material Design UI kit, or awesome-react-native for discovering various tools and libraries in the React Native ecosystem.

Cross-Platform React Native UI Toolkit

Pros of React Native Elements

  • Provides a comprehensive set of pre-built UI components
  • Offers consistent styling and theming across components
  • Regularly updated and maintained by an active community

Cons of React Native Elements

  • Limited flexibility for highly customized designs
  • Larger bundle size due to inclusion of all components
  • Learning curve for customizing components beyond basic props

Code Comparison

React Native Elements:

import { Button } from 'react-native-elements';

<Button
  title="Click me"
  buttonStyle={{ backgroundColor: 'blue' }}
  onPress={() => console.log('Button pressed')}
/>

Awesome React Native (using a typical button component):

import { TouchableOpacity, Text } from 'react-native';

<TouchableOpacity
  style={{ backgroundColor: 'blue', padding: 10 }}
  onPress={() => console.log('Button pressed')}
>
  <Text style={{ color: 'white' }}>Click me</Text>
</TouchableOpacity>

React Native Elements provides a more streamlined approach with pre-styled components, while Awesome React Native offers a curated list of resources and libraries, allowing for more flexibility but requiring additional setup and customization.

A complete native navigation solution for React Native

Pros of react-native-navigation

  • Dedicated navigation solution with native performance
  • Extensive customization options for navigation UI
  • Strong community support and regular updates

Cons of react-native-navigation

  • Steeper learning curve compared to curated list approach
  • Focused solely on navigation, lacking broader React Native ecosystem coverage
  • May require additional setup and configuration

Code Comparison

react-native-navigation:

Navigation.setRoot({
  root: {
    stack: {
      children: [
        {
          component: {
            name: 'Home'
          }
        }
      ]
    }
  }
});

awesome-react-native (using react-navigation):

import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';

const Stack = createStackNavigator();

function App() {
  return (
    <NavigationContainer>
      <Stack.Navigator>
        <Stack.Screen name="Home" component={HomeScreen} />
      </Stack.Navigator>
    </NavigationContainer>
  );
}

Summary

react-native-navigation is a specialized navigation library offering native performance and extensive customization. awesome-react-native, on the other hand, is a curated list of React Native resources, including various navigation solutions. While react-native-navigation provides a more focused and optimized navigation experience, awesome-react-native offers a broader overview of the React Native ecosystem, allowing developers to choose from multiple navigation options and other related tools.

17,313

Infinite Red's battle-tested React Native project boilerplate, along with a CLI, component/model generators, and more!

Pros of Ignite

  • Provides a complete boilerplate and CLI tool for React Native projects
  • Includes pre-configured best practices and common libraries
  • Offers a standardized project structure and development workflow

Cons of Ignite

  • Less flexibility compared to choosing individual components
  • Steeper learning curve for developers new to the Ignite ecosystem
  • May include unnecessary dependencies for simpler projects

Code Comparison

Ignite (project setup):

npx ignite-cli new MyAwesomeApp
cd MyAwesomeApp
npx react-native run-ios # or run-android

Awesome React Native (manual setup):

npx react-native init MyAwesomeApp
cd MyAwesomeApp
# Manually add desired libraries and configurations
npx react-native run-ios # or run-android

Key Differences

  • Awesome React Native is a curated list of resources, while Ignite is a project generator and boilerplate
  • Awesome React Native offers more flexibility in choosing individual components and libraries
  • Ignite provides a more opinionated and structured approach to React Native development

Use Cases

  • Awesome React Native: Ideal for developers who want to explore various options and customize their stack
  • Ignite: Best for teams looking for a standardized, pre-configured React Native development environment

Community and Maintenance

  • Both projects have active communities and are well-maintained
  • Awesome React Native has more stars and contributors due to its nature as a curated list
  • Ignite has regular releases and updates to its boilerplate and included libraries

Customizable Icons for React Native with support for image source and full styling.

Pros of react-native-vector-icons

  • Focused specifically on providing vector icons for React Native projects
  • Offers a wide variety of icon sets out of the box
  • Provides an easy-to-use API for implementing icons in React Native apps

Cons of react-native-vector-icons

  • Limited in scope compared to the broader resource collection in awesome-react-native
  • May require additional setup and configuration for some projects
  • Doesn't cover other aspects of React Native development beyond icons

Code Comparison

react-native-vector-icons:

import Icon from 'react-native-vector-icons/FontAwesome';

const MyComponent = () => (
  <Icon name="rocket" size={30} color="#900" />
);

awesome-react-native: This repository doesn't provide direct code examples but instead offers links to various React Native resources, including icon libraries. A typical usage might involve exploring the list and choosing appropriate tools:

// No direct code example available
// Users would typically browse the curated list and select relevant resources

Summary

react-native-vector-icons is a specialized library for adding vector icons to React Native projects, offering a straightforward API and multiple icon sets. awesome-react-native, on the other hand, is a comprehensive collection of React Native resources, covering a wide range of topics beyond just icons. While react-native-vector-icons provides immediate value for icon implementation, awesome-react-native serves as a broader reference for various aspects of React Native development.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README




awesome




Awesome React Native is an awesome style list that curates the best React Native libraries, tools, tutorials, articles and more. PRs are welcome!

Don't miss out! Subscribe to our weekly newsletter



Build Status

Sponsors

Never leave your command line for secrets

Teller is an OSS and FREE productivity secret manager for developers made by SpectralOps, supporting cloud-native apps and multiple cloud providers. Mix and match all vaults and other key stores and safely use secrets as you code, test, and build applications. It's quick, easy, and safe.

Get Started Now!

Categories

Many thanks to everyone on the contributor list\:)

Conferences

Conferences dedicated to React Native specifically. A listing of React general conferences can be found on the ReactJS site.

Chain React - Portland, OR USA

http://chainreactconf.com

Workshops - July 11th, 2018\ Conference - July 12-13th, 2018

React Native EU - Wroclaw, Poland

http://react-native.eu/

Workshops - September 3-4th, 2018\ Conference - September 5-6th, 2018

React Alicante - Alicante, Spain

http://reactalicante.es/

Workshops - September 13th, 2018\ Conference - September 14-15th, 2018

ReactNext - Tel Aviv, Israel

https://react-next.com/

Conference - November 4th, 2018

App.js Conf - Krakow, Poland

https://appjs.co/

Conference - April 4th, 2019 Workshops - April 5th, 2019

Chain React - Portland, OR USA

https://infinite.red/ChainReactConf

Workshops - July 10th, 2019 Conference - July 11th-12th, 2019

React Native EU - Wroclaw, Poland

https://react-native.eu/

Workshops - September 4th, 2019 Conference - September 5th-6th, 2019

React Berlin - Berlin, Germany

https://reactday.berlin/

Workshops - December 4th-5th, 2019 Conference - December 6th, 2019

ReactEurope - Paris, France

https://www.react-europe.org/

Conference - May 14th-15, 2020 Workshops - May 12th-13th, 2020

Articles

Content published on the Web.

Reference

Howtos

Assorted

Continuous Integration

Internals

Components

Components and native modules.

UI

Navigation

Navigation/Routing Articles

Navigation Demos

Deep Linking

Text & Rich Content

Analytics

Utils & Infra

Forms

Geolocation

Internationalization

Build & Development

Styling

System

Web

Media

Storage

Backend

Integrations

Monetization

Animation

Extension

Other Platforms

Utilities

Useful React Native tooling.

Seeds

Get a head start on development with an existing seed.

Libraries

Libraries / SDK type additions for React Native development.

Open Source Apps

Open source React Native apps and other examples.

Frameworks

  • NativeBase ★10520 - builds a layer on top of React Native that provides you with basic set of components for mobile application development
  • Teaset ★1575 - A UI library for react native, provides 20+ pure JS(ES6) components, focusing on content display and action control.
  • Awesome React Native Meteor ★152 - An awesome list of resources for using Meteor and React Native together
  • first-born ★106 - A UI framework with pre-built components that render separately according to the underlying mobile platform.
  • OsmiCSX ★48 - An utility React Native style framework for rapidly building custom user interfaces.
  • React Native Diagnose ★13 - A framework to test a React Native app during runtime and production

Tutorials

Walkthroughs and tutorials that help you learn React Native.

Books

Books - free and commercial (but only good ones).

Books - for sale.

Videos

Assortment of conference and training videos.

Talks

Training & tutorials

Blogs

Newsletters

Releases