Internal Packages

Advanced Ecosystem 🟡 Mid

Definition

Packages partagés au sein d'un monorepo sans publication sur NPM. Référencés via le protocole workspace, ils permettent le partage de code typé entre applications.

Analogie

Des recettes maison partagées entre restaurants du même groupe, jamais publiées dans un livre de cuisine.

Exemple de code

// packages/ui/package.json
{ "name": "@myorg/ui", "main": "./src/index.ts" }
// apps/web/package.json
{ "dependencies": { "@myorg/ui": "workspace:*" } }
// Usage
import { Button } from '@myorg/ui';

Cas d'usage

Partager des composants UI, utils ou types entre le frontend et le backend d'un monorepo.

Anti-pattern

Publier sur NPM des packages utilisés uniquement en interne, ajoutant de la complexité inutile.
#monorepo#architecture