Framework
Um framework é uma estrutura reutilizável de código que fornece padrões e ferramentas para o desenvolvimento de software. Ele define um fluxo de controle no qual o desenvolvedor encaixa seu código, ao contrário de bibliotecas que são chamadas diretamente.
Exemplo: O Angular é um framework front-end que oferece estrutura para componentes, rotas e injeção de dependência.