api3dao / commons

Common utilities, modules and configurations used in API3 projects
MIT License
0 stars 2 forks source link

Consider making commons a monorepo #89

Closed Siegrift closed 1 month ago

Siegrift commented 4 months ago

This was suggested in https://github.com/api3dao/commons/issues/29#issuecomment-1916328026 and in https://github.com/api3dao/commons/issues/4#issue-1930059926.

The idea is that the commons repo serves (or could) different purposes:

  1. Libraries and utilities - e.g. logger, blockchain utilities
  2. Dev tools - e.g. eslint
  3. Testing only libraries - e.g. some mock utilities, extensions to jest, cypress, chai, etc...
  4. Blueprints - e.g. ideal TS/jest,etc... configuration files

At the moment, only 1) and 2) are implemented and there are not immediate plans for 3) and 4). Migrating to the monorepo has advantages that we can have more focused packages, better bundle size (good for FE). However, it brings a significant overhead in terms releasing, versioning and also for consumers.

It's better to do this once the commons repo grows in size and there are going to be good reasons for this migration.

Siegrift commented 2 months ago

Over time, there seems NOT to be an use case for this. We seem to be OK with just a single repo for the time being.

Siegrift commented 1 month ago

Even more time has passed, and there are still no use cases for this and the commons repo is still limited in size. I'm closing this and we can reopen this once we have a reason to migrate to monorepo.