Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use pnpm catalogs in identity-apps repository #21533

Open
brionmario opened this issue Oct 29, 2024 · 0 comments
Open

Use pnpm catalogs in identity-apps repository #21533

brionmario opened this issue Oct 29, 2024 · 0 comments

Comments

@brionmario
Copy link
Member

Is your suggestion related to an experience? Please describe.

Currently, we declare dependencies in each feature's package.json file within the identity-apps repository rather than consolidating them in the root package.json.

This approach offers certain advantages:

  • It allows individual features to be modular, making it easier to move them out of the monorepo if needed.
  • It improves readability by clearly identifying dependencies needed for each feature.
  • It can simplify bundling with tools like Rollup.

However, this approach has several drawbacks:

  1. Multiple versions of the same package: Version conflicts can arise, especially if different versions of a package (e.g., mixing ~ and ^ or strict versioning) are declared across different features.
  2. Local development issues: Local environment inconsistencies can lead to errors that aren’t caught in development, due to variations in package versions across features.

Describe the improvement

Integrate pnpm catalogs and use the catalog protocol to centralize common dependencies. This will help streamline package management and minimize potential version conflicts. Key packages that can be managed with catalogs include:

  • @asgardeo/auth-react
  • @oxygen-ui/react
  • @wso2is packages (both features and modules)

Additional context

N/A

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

1 participant