0Pricing
TypeScript Academy · Aula

Monorrepositórios e referências de projetos

Crie um monorrepositório de trabalho e conecte referências de projetos TypeScript para obter compilações rápidas e incrementais e tipos limpos entre pacotes.

Monorrepositórios e referências de projetos é uma aula grátis de TypeScript Academy no CoddyKit. Esta é a aula 1 de 1. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de TypeScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de TypeScript Academy inclui 1 aulas no total.

Introdução

Objetivo: organizar um monorepositório que possa crescer. Você declarará espaços de trabalho, adicionará Referências de Projeto e compilará com tsc -b para obter saída incremental.

  • Espaços de trabalho do pnpm/yarn
  • Projetos compostos
  • Tipos compartilhados

Estrutura do espaço de trabalho

Uma estrutura simples com dois pacotes: shared (biblioteca) e app (depende de shared). Os espaços de trabalho vinculam os pacotes locais.

# 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

Espaços de trabalho raiz

Declare os espaços de trabalho para que o gerenciador de pacotes vincule as dependências locais. Adicione scripts de build/clean usando o modo de compilação do TS.

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

Pacote compartilhado

Marque a biblioteca como um projeto composto. Gere declarações para que os dependentes possam verificar tipos rapidamente.

// 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}`

Pacote app + referências

Adicione uma entrada de referências para depender de shared. A ferramenta de compilação compila primeiro shared e depois 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" }))

Configuração base e dicas

Dicas:

  • Crie tsconfig.base.json para as opções de compilação compartilhadas.
  • Use mapeamentos de paths que reflitam os nomes dos pacotes.
  • Execute tsc -b --watch para o desenvolvimento local incremental.

Verificação do requisito de referências

Verificação rápida: O que cada pacote referenciado deve incluir?

Recapitulação

Recapitulação: Os espaços de trabalho vinculam os pacotes locais; as Referências de Projeto (composite + references) permitem compilações rápidas e incrementais com tsc -b e tipos confiáveis entre pacotes.

Perguntas Frequentes

A aula “Monorrepositórios e referências de projetos” é grátis?

Sim — o texto completo de “Monorrepositórios e referências de projetos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de TypeScript Academy, atualize para CoddyKit PRO. O curso de TypeScript Academy inclui 1 aulas no total.

O que vou aprender em “Monorrepositórios e referências de projetos”?

Crie um monorrepositório de trabalho e conecte referências de projetos TypeScript para obter compilações rápidas e incrementais e tipos limpos entre pacotes. Você pratica TypeScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar TypeScript Academy?

Nenhuma experiência prévia é necessária. TypeScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 1.

Quanto tempo leva a aula “Monorrepositórios e referências de projetos”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de TypeScript Academy?

Sim. Cada aula de TypeScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

← Voltar para TypeScript Academy