We've moved! Check out our new catalog: JS.coach
In order to be listed in the catalog, a React-related project should meet the following criteria:
- Unscoped package published in the NPM registry: Your package must be published on the NPM registry. Currently, scoped packages are omitted from search results, and because of that we need the package name to be unscoped.
- The
package.jsonfile has arepositoryproperty that points to GitHub: We currently use GitHub for displaying stars, documentation and for detecting platform support (in the case of React Native). Please, set therepositoryproperty so we can find your repo. - The
package.jsonfile has akeywordsproperty: It improves discoverability if you add thereact-componentkeyword to yourpackage.json. If your package is for React Native, we recommend that you also add thereact-nativeandioskeywords, and/or alternativelyandroid(depending on which platforms your package supports). - ReadMe file with usage examples: The package should include instructions and examples.
Here's an example of a package.json file for a React Native component:
{
"name": "my-npm-package-name",
"repository": {
"type": "git",
"url": "https://github.com/owner-name/repository-name"
},
"description": "A short description of your package",
"keywords": [
"react-component",
"react-native",
"ios",
"android"
],
"peerDependencies": {
"react-native": "^0.14.2"
}, …
}The React ecosystem is made by so much more than components, and so we have been adding other kinds of packages to the catalog, including mixins, boilerplates, generators and other libraries that are related to React, Flux or GraphQL. All packages are manually reviewed, so keep in mind that your package may take days before being added to the catalog.