0Pricing
Angular Academy · Aula

Criando uma biblioteca com ng generate

Estruture um projeto de biblioteca.

Criando uma biblioteca com ng generate é uma aula grátis de Angular Academy no CoddyKit. Esta é a aula 1 de 4. 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 Angular Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Angular Academy inclui 4 aulas no total.

Por que criar uma biblioteca

Quando vários aplicativos precisam dos mesmos componentes, serviços ou utilitários, empacote-os como uma biblioteca Angular. Uma biblioteca é reutilizável, versionada e publicável, em vez de exigir que você copie e cole código entre projetos.

Os espaços de trabalho contêm bibliotecas

As bibliotecas ficam dentro de um espaço de trabalho Angular: uma pasta gerenciada por um único angular.json que pode conter vários aplicativos e bibliotecas. Você pode adicionar uma biblioteca a um espaço de trabalho existente ou criar um espaço dedicado.

ng new my-workspace --create-application=false
# a workspace with no app, ready to hold libraries

Gerando uma biblioteca

O esquema ng generate library (com o alias ng g lib) cria a estrutura inicial de um novo projeto de biblioteca em projects/.

ng generate library ui-kit
# creates projects/ui-kit with a sample component, module, and public-api.ts

O que é criado

A biblioteca vem com sua própria pasta src/lib, um arquivo agregador public-api.ts, um ng-package.json (para a compilação) e uma entrada em angular.json. Ela é um projeto independente que pode ser compilado.

projects/ui-kit/
  src/
    lib/        # your components & services
    public-api.ts
  ng-package.json
  package.json

Adicionando componentes à biblioteca

Gere código na biblioteca direcionando o comando para ela com --project. A CLI coloca os arquivos na pasta correta.

ng generate component button --project=ui-kit
ng generate service theme --project=ui-kit

Componentes independentes em bibliotecas

As bibliotecas modernas priorizam componentes independentes, que os consumidores importam diretamente sem um NgModule. Marque o componente com standalone: true para que os aplicativos possam usá-lo com uma simples importação.

@Component({
  selector: 'lib-button',
  standalone: true,
  template: '<button class="lib-btn"><ng-content></ng-content></button>',
})
export class ButtonComponent {}

O package.json da biblioteca

Cada biblioteca tem seu próprio package.json, que define seu nome, sua versão e suas dependências de pares, como @angular/core. As dependências de pares significam que o aplicativo consumidor fornece o Angular, evitando cópias duplicadas.

{
  "name": "ui-kit",
  "version": "0.0.1",
  "peerDependencies": { "@angular/core": "^18.0.0" }
}

Desenvolvendo com um aplicativo local

Mantenha um aplicativo de demonstração no mesmo espaço de trabalho para exercitar a biblioteca enquanto você a desenvolve. Importar pelo nome da biblioteca resolve o caminho para o código-fonte local por meio dos mapeamentos de caminhos do TypeScript em tsconfig.

Biblioteca versus aplicativo

Um aplicativo é feito para ser implantado; uma biblioteca é feita para ser consumida. Bibliotecas não podem ser disponibilizadas diretamente: elas são compiladas em um pacote distribuível e publicadas ou importadas pelos aplicativos do espaço de trabalho.

Mantenha as bibliotecas focadas

Uma boa biblioteca tem um propósito claro (um kit de interface do usuário, uma camada de acesso a dados). Evite reunir código sem relação; bibliotecas coesas são mais fáceis de versionar, documentar e reutilizar.

Próximos passos

Com a estrutura inicial da biblioteca pronta, resta definir sua API pública, compilá-la no Angular Package Format e publicá-la. As próximas lições abordam cada uma dessas etapas.

Verificação rápida

Como você cria uma biblioteca?

Recapitulação

As bibliotecas empacotam código reutilizável para vários aplicativos. Crie uma com ng generate library dentro de um espaço de trabalho; o comando cria a estrutura inicial de src/lib, public-api.ts, ng-package.json e um package.json com dependências de pares. Adicione código usando --project, prefira componentes independentes e mantenha cada biblioteca focada.

Perguntas Frequentes

A aula “Criando uma biblioteca com ng generate” é grátis?

Sim — o texto completo de “Criando uma biblioteca com ng generate” é 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 Angular Academy, atualize para CoddyKit PRO. O curso de Angular Academy inclui 4 aulas no total.

O que vou aprender em “Criando uma biblioteca com ng generate”?

Estruture um projeto de biblioteca. Você pratica Angular 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 Angular Academy?

Nenhuma experiência prévia é necessária. Angular 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 4.

Quanto tempo leva a aula “Criando uma biblioteca com ng generate”?

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 Angular Academy?

Sim. Cada aula de Angular 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.

Todas as aulas deste curso

  1. Criando uma biblioteca com ng generate
  2. API pública e pontos de entrada
  3. Criando com ng-packagr
  4. Publicando no npm
← Voltar para Angular Academy