NuxtN
Nuxt11mo ago
4 replies
kylyi

Layers architecture and performance

I'm using a simple monorepo to separate the code:

packages:
  - 'libs/*'
  - 'apps/*'
  - 'layers/*'


In layers, I have the "common" stuff, like Utilities (consisting of functions, constants, ...) and UI (consisting primarily of components). layers may use each other, for example, UI uses Utilities layer.

Then I have the libs, which are technically also nuxt layers. Each lib has its own components, its own API handlers and so on. libs can use layers but cannot use other libs - if a lib requires another lib, it just imports stuff from the lib directly (or actually through alias)

And lastly, there are apps which use the layers and libs to create something actually usable for the end-user.

Now, some apps may use 10+ layers and those layers can reuse each other and so on. Therefore, the generated tsconfigs and typescript-related stuff is really heavy. Also, when I use the vue-tsc in some lib, I expect only the lib to be checked, but currently the used layers are also checked.

How do I go about this?
Was this page helpful?