📁 Arquitectura del proyecto

NK Next Starter organiza el código según la responsabilidad de cada archivo para mantener una estructura consistente entre proyectos.

📄 App

src/app contiene:

  • Layout global.
  • Páginas organizadas por idioma.
  • Rutas estáticas y dinámicas.
  • Páginas de error y 404.
  • Sitemap.
  • robots.txt.
  • llms.txt.
  • Estilos globales.

Las páginas principales se encuentran dentro de src/app/(pages)/[locale].

🧩 Components

src/components se divide en:

  • common: componentes reutilizables.
  • layout: componentes globales del sitio.
  • seo: componentes relacionados con datos estructurados.

Los componentes principales se exportan desde src/components/index.ts.

🌐 i18n

src/i18n contiene:

  • Configuración de idiomas.
  • Rutas localizadas.
  • Navegación.
  • Traducciones.
  • Redirecciones.
  • Configuración de requests.

🎬 Lib

src/lib contiene la infraestructura de animaciones:

  • Configuraciones.
  • Loader.
  • Transiciones.
  • Animaciones de entrada.
  • Animaciones de scroll.
  • SplitText.
  • Integración con Lenis.
  • Registro de GSAP.
  • Hooks y ticker compartido.

🎨 Styles

src/styles contiene:

  • Tokens.
  • Reset.
  • Tipografías.
  • Grilla y wrapper.
  • Utilidades.
  • Clases de animación.

🧠 Store

src/store contiene el estado global administrado con Zustand.

🛠️ Utils

src/utils contiene:

  • Funciones generales.
  • Hooks reutilizables.
  • Helpers para enlaces.
  • Metadata.
  • Datos estructurados.

📦 Otras carpetas

  • src/actions: acciones ejecutadas desde el servidor.
  • src/constants: constantes compartidas.
  • src/types: tipos utilizados en diferentes partes del proyecto.
  • public: imágenes y archivos estáticos.
  • .cursor/rules: reglas para Cursor.
  • .agents/skills: skills para asistentes de IA.

⚙️ Configuración

En la raíz se encuentran las configuraciones de:

  • Next.js.
  • TypeScript.
  • PostCSS.
  • ESLint.
  • Prettier.
  • Husky.
  • Variables de entorno.
  • Dependencias y scripts.

📌 Convenciones

  • Utilizar @/ para imports internos.
  • Organizar los archivos según su responsabilidad.
  • Reutilizar componentes y utilidades existentes.
  • Evitar duplicar lógica.
  • Centralizar las configuraciones compartidas.
  • Utilizar la infraestructura de animaciones existente.

On this page