Akshey Jawa
Akshey Jawa

Reputation: 447

Common React Components across multiple apps

We have 3 react apps. Some of the components being used in these apps are common for the 3 apps. We want to have a separate common git repo, where we can put the code for the common components and use those components in the 3 apps. Currently, we do have a repo for common components which is linked from the 3 apps like this in package.json:

package-name username/repo#commit-id

This arrangement poses some difficulties:

Overall, the process is not good. Many times it throws strange errors which are hard to solve.

Can you suggest an alternative way to accomplish the same?

Upvotes: 0

Views: 179

Answers (1)

Code-Apprentice
Code-Apprentice

Reputation: 83517

For some reason, hooks don't work in the common repo even if we upgrade the react version.

Treat the component package as its own project. It should have its own package.json that declares its dependencies.

It sounds like you are trying to develop the component package at the same time you develop the other projects that use them. Instead, you should develop the component package in its own environment. If you find problems or think of new features to add to the component package while you work on a project that uses it, create new issues for the component package project and work on them there.

The projects that use this component package should declare a specific version (either by a tag or a commit) which they use. Upgrading to a new version of the component package should follow the same process as upgrading versions of a 3rd party package, such as React itself.

Upvotes: 1

Related Questions