O comando npm install --legacy-peer-deps é usado para contornar a funcionalidade de instalação automática de peerDependency ao instalar pacotes. Ele diz ao NPM para ignorar as dependências de pares e instalar apenas o pacote.
No NPM v7+, por padrão, npm install falhará quando encontrar peerDependencies conflitantes. Isso não era assim antes. Se você já tem um peerDependency instalado, mas não com uma versão nomeada pelo módulo, então o NPM v7+ lançará um erro. Adicionar --legacy-peer-deps ignora esse novo requisito, com o risco de introduzir mudanças que quebram a funcionalidade.
Portanto, se o seu projeto estava quebrando com npm install, é provável que houvesse algum conflito de dependência que estava sendo ignorado com o uso de --legacy-peer-deps. Isso pode acontecer quando diferentes pacotes no seu projeto dependem de diferentes versões da mesma biblioteca. Com --legacy-peer-deps, o NPM ignora esses conflitos e prossegue com a instalação.