react-native-community / directory

A searchable and filterable directory of React Native libraries.
https://reactnative.directory
MIT License
960 stars 461 forks source link
directory expo react-native react-native-macos react-native-tvos react-native-web react-native-windows registry
React Native Directory Logo

React Native Directory

https://reactnative.directory

React Native Directory is a website where you can see all the libraries that are compatible with React Native.

Powered by Vercel

How do I know I'm at the right place?

How do I update the data for a library?

How do I add a library?

New library entry template

[!NOTE] Please follow format, fields order and indentation as seen below, skip any of the false values and do not fill optional fields, unless it's necessary. You can find the detailed descriptions of the fields below the entry template.

{
  "githubUrl": "<GITHUB REPOSITORY URL>",
  "npmPkg": "<OPTIONAL NPM PACKAGE NAME>",
  "nameOverride": "<OPTIONAL PACKAGE DISPLAY NAME>",
  "examples": [
    "<THE URL TO REPO>",
    "<THE URL TO A SNACK>"
  ],
  "images": ["<PUBLIC URL TO RELATED IMAGE>"],
  "ios": false,
  "android": false,
  "web": false,
  "expoGo": false,
  "windows": false,
  "macos": false,
  "tvos": false,
  "visionos": false,
  "unmaintained": false,
  "dev": false,
  "template": false,
  "newArchitecture": false
}

Library fields description

⚙️ General

📱 Platforms

[!NOTE] Any library can be used with Expo, if you use dev clients and prebuild.

🖥️ Out-of-tree Platforms

[!IMPORTANT] Adding out-of-tree platforms support requires an example or link to the app which uses the library on the given platform.

🏷️ Tags

📝 Additional context for tags


[!NOTE] If your package is within a monorepo on GitHub, eg: https://github.com/expo/expo/tree/main/packages/expo-web-browser, then the name, description, homepage, and topics (keywords) will be extracted from package.json in the package subdirectory. However, GitHub stats will be based on the monorepo, because there isn't really another option.

How do I run my own version locally?

Prerequisites

Commands

yarn && yarn start

You should be able to visit localhost:3000 in your browser.

How do I run yarn data:update with keys?

This command creates site data in ./assets/data.json

GITHUB_TOKEN=<*> yarn data:update

How do I deploy to production?

Get a commit on main and it will be automatically deployed.

I don't like your website, can I hit an API instead and build my own better stuff?

Sure, go for it!

https://reactnative.directory/api/libraries

https://reactnative.directory/api/libraries?search=webgl

https://reactnative.directory/api/libraries?search=webgl&expoGo=true

https://reactnative.directory/api/libraries?search=webgl&expoGo=true&android=true

https://reactnative.directory/api/libraries?search=webgl&expoGo=true&android=true&isPopular=true

All the possible query parameters represents Query type.

I don't like how you calculate scores.

How do I deploy my own version of this?

# once environment variables are configured, install Vercel and deploy
npm i -g vercel
vercel