se eu precisar colocar uma chave de API pro front ter acesso
Pensa que o usuário tem acesso à tudo que está no front, podendo recuperar e usar essa chave de API.
Você realmente acha uma boa ideia compartilhar uma chave de API com qualquer pessoa que acesse a sua aplicação?
Eu uso 2 abordagens:
Front <-> Back <-> Database, APIS
O back se comunica com qualquer api externa e pode servir como um "wraper" ou proxy para essa api externa, a chave de api fica segura no backend
ou
Front <-> BFF <-> Apis, Backend
BFF é um conceito chamado "backend for front-end", ele é responsável por fazer um proxy do front para qualquer outro serviço, o maior exemplo disso é o NextJS.
Tenho uma aplicação que o front só se comunica com o servidor do NextJS, e esse servidor se comunica com o backend. O backend em sí nem é acessível pelo front
Inclusive a única variável do .env do Next é BACKEND_URL.
É só isso que ele precisa, nada mais