0Pricing
TypeScript Academy · Lección

Monorepos y referencias de proyecto

Cree un monorepo de workspace y conecte las referencias de proyecto de TypeScript para obtener compilaciones rápidas e incrementales y tipos limpios entre paquetes.

Monorepos y referencias de proyecto es una lección gratuita de TypeScript Academy en CoddyKit. Esta es la lección 1 de 1. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de TypeScript Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de TypeScript Academy incluye 1 lecciones en total.

Introducción

Objetivo: Organizar un monorepo que pueda crecer. Declarará workspaces, añadirá Project References y compilará con tsc -b para obtener una salida incremental.

  • Workspaces de pnpm/yarn
  • Proyectos compuestos
  • Tipos compartidos

Estructura del workspace

Una estructura sencilla de dos paquetes: shared (biblioteca) y app (depende de shared). Los workspaces enlazan los paquetes locales.

# folder structure (for reference)
			/monorepo
			package.json
			tsconfig.base.json
			packages/
			shared/
			src/index.ts
			package.json
			tsconfig.json
			app/
			src/index.ts
			package.json
			tsconfig.json

Workspaces raíz

Declare los workspaces para que el gestor de paquetes enlace las dependencias locales. Añada los scripts build/clean mediante el modo de compilación de TS.

// package.json (root)
			{
			"name": "monorepo",
			"private": true,
			"workspaces": ["packages/*"],
			"scripts": {
			"build": "tsc -b packages/*",
			"clean": "tsc -b packages/* --clean"
			}
			}

Paquete shared

Marque la biblioteca como un proyecto composite. Genere declaraciones para que los paquetes dependientes puedan comprobar los tipos rápidamente.

// packages/shared/tsconfig.json
{
  "extends": "../../tsconfig.base.json",
  "compilerOptions": {
    "outDir": "dist",
    "rootDir": "src",
    "declaration": true,
    "composite": true
  },
  "include": ["src"]
}

// packages/shared/src/index.ts
export interface User { id: string; name: string }
export const hello = (u: User) => `Hello, ${u.name}`

Paquete app + referencias

Añada una entrada de references para depender de shared. El compilador compila primero shared y después app.

// packages/app/tsconfig.json
			{
			"extends": "../../tsconfig.base.json",
			"compilerOptions": {
			"outDir": "dist",
			"rootDir": "src",
			"composite": true
			},
			"references": [
			{ "path": "../shared" }
			],
			"include": ["src"]
			}

			// packages/app/src/index.ts
		import { hello } from "shared"
console.log(hello({ id: "u1", name: "Ada" }))

Configuración base y consejos

Consejos:

  • Cree tsconfig.base.json para las opciones compartidas del compilador.
  • Use asignaciones de paths que reflejen los nombres de los paquetes.
  • Ejecute tsc -b --watch para el desarrollo local incremental.

Comprobación de los requisitos de las referencias

Comprobación rápida: ¿Qué debe incluir cada paquete referenciado?

Resumen

Resumen: Los workspaces enlazan los paquetes locales; Project References (composite + references) permiten compilaciones rápidas e incrementales con tsc -b y tipos fiables entre paquetes.

Preguntas frecuentes

¿La lección «Monorepos y referencias de proyecto» es gratis?

Sí — el texto completo de «Monorepos y referencias de proyecto» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de TypeScript Academy, actualiza a CoddyKit PRO. El curso de TypeScript Academy incluye 1 lecciones en total.

¿Qué aprenderé en «Monorepos y referencias de proyecto»?

Cree un monorepo de workspace y conecte las referencias de proyecto de TypeScript para obtener compilaciones rápidas e incrementales y tipos limpios entre paquetes. Practicas TypeScript Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar TypeScript Academy?

No se requiere experiencia previa. TypeScript Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 1.

¿Cuánto tiempo toma la lección «Monorepos y referencias de proyecto»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de TypeScript Academy?

Sí. Cada lección de TypeScript Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

← Volver a TypeScript Academy