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:

Terminal
OPENAI_API_KEY=sua-chave-aqui
DATABASE_URL=postgres://usuario:senha@localhost:5432/meubanco
PORT=3000

Y la lectura en Node.js, con la biblioteca dotenv:

JavaScript · index.js
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:

Terminal
.env

Así 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í.