El .env es un archivo de texto simple, en la raíz del proyecto, donde listas variables de entorno, una por línea. Guarda configuraciones y secretos locales, como claves de API, fuera del código.
Como funciona
Cada línea tiene el formato NOME=valor. Al iniciar, el proyecto usa una biblioteca, o un recurso propio del framework, que lee el archivo y carga esas líneas como variables de entorno. El código luego lee los valores de forma normal.
Un archivo de ejemplo:
OPENAI_API_KEY=sua-chave-aqui
DATABASE_URL=postgres://usuario:senha@localhost:5432/meubanco
PORT=3000Y la lectura en Node.js, con la biblioteca dotenv:
require("dotenv").config();
console.log(process.env.PORT);En Python existe algo parecido con la biblioteca python-dotenv. Muchos frameworks modernos ya leen el .env por sí solos.
El nombre empieza con punto, lo que en sistemas Linux y macOS hace que el archivo sea oculto por defecto. Usa la opción para mostrar archivos ocultos y verlo.
Ejemplo práctico
Estás creando un bot que usa una API de IA. Creas el .env con la clave y agregas una línea al .gitignore:
.envAsí Git nunca envía el archivo al repositorio. Para ayudar a colegas, creas un .env.example con los mismos nombres y valores falsos, y ese sí puede ir al repositorio.
Cuando otra persona descargue el proyecto, copia el ejemplo, lo renombra a .env y completa con sus propias claves.
Para qué sirve
Sirve para separar secretos del código, facilitar la configuración local y mantener entornos diferentes, como desarrollo y producción, con valores distintos.
Herramientas de agentes de código y proyectos con APIs de modelos usan el .env con frecuencia para recibir claves de proveedores.
Cuidados
- Nunca hagas commit del
.env. Si eso ocurre, considera la clave comprometida: revócala y crea otra. Borrar el archivo después no elimina lo que quedó en el historial de Git. - Sin comillas ni espacios alrededor del signo igual, a menos que la biblioteca lo pida.
- En producción, prefiere el panel de variables del hosting o un gestor de secretos, en vez de llevar el archivo al servidor.
- Agentes de IA que leen tu proyecto pueden acceder al
.env. Restringe permisos y evita dejar claves de alto privilegio allí.