Angela Sofíá Osorio
Tiempo de lectura 2 minutes
Fecha de publicación
Cuando trabajas con Next.js, uno de los debates comunes es si conviene o no organizar el proyecto dentro de un directorio src. Aunque no es obligatorio, esta decisión puede afectar la claridad y escalabilidad del código a largo plazo.

¿Qué hace el directorio src en Next.js?
El directorio src sirve únicamente como contenedor del código fuente. No altera el funcionamiento de Next.js, ya que el framework reconoce automáticamente si los directorios pages/ o app/ están en la raíz o dentro de src.
Por ejemplo, Next.js ejecutará correctamente ambos casos:
Estructura sin src:
my-project/
├── app/
├── components/
├── styles/
├── next.config.js
└── package.jsonLuaEstructura con src:
my-project/
├── src/
│ ├── app/
│ ├── components/
│ ├── styles/
├── next.config.js
└── package.jsonLuaVentajas de usar src/
- Organización en proyectos grandes: Mantiene separados los archivos de configuración (
next.config.js,.eslintrc,package.json) del código fuente. - Consistencia con otros frameworks: Muchas aplicaciones React, Angular o Vue usan este patrón, por lo que es una convención reconocida.
- Escalabilidad: Si el proyecto incluye múltiples módulos (por ejemplo,
features/,services/,lib/), el uso desrc/evita saturar la carpeta raíz.
Ejemplo de un proyecto grande con src/:
my-project/
├── src/
│ ├── app/
│ ├── components/
│ ├── features/
│ ├── lib/
│ ├── services/
│ └── styles/
├── public/
├── next.config.js
└── package.jsonpLuaDesventajas de usar src/
- Un nivel extra de carpetas: Para proyectos pequeños puede resultar innecesario.
- Sin impacto funcional: Next.js no obtiene mejoras de rendimiento ni características extra al usar
src.
Ejemplo práctico: página básica con y sin src
Sin src
my-project/
├── app/
│ ├── page.js
│ └── layout.jsLuaapp/page.js:
export default function HomePage() {
return <h1>Hola desde Next.js sin src</h1>;
}pJavaScriptCon src
my-project/
├── src/
│ ├── app/
│ │ ├── page.js
│ │ └── layout.jsLuasrc/app/page.js:
export default function HomePage() {
return <h1>Hola desde Next.js con src</h1>;
}JavaScriptEn ambos casos, al ejecutar npm run dev, el resultado es idéntico.
¿Qué elegir?
- Proyectos pequeños o personales: No usar
srcmantiene la estructura más simple. - Proyectos medianos o grandes (o trabajo en equipo): Usar
srces recomendable para mantener la raíz ordenada y facilitar la escalabilidad.
Conclusión
El uso de src/ en Next.js es una cuestión de organización, no de funcionalidad. Si planeas mantener un proyecto a largo plazo o trabajas con un equipo, src/ puede ayudarte a mantener el código más limpio. Para prototipos o proyectos pequeños, puedes prescindir de él sin problema.
Contents