¿Odias los anuncios? Ir Sin publicidad Hoy

Generador de tsconfig.json

DatosDesarrollador
ANUNCIO · ¿ELIMINAR?

Idioma y módulos

Versión de JavaScript a la que se compila.
Sistema de módulos para el código emitido.
Cómo resuelve el compilador los especificadores de importación.
Modo de emisión de JSX. Requerido para proyectos de React.
Bibliotecas estándar separadas por comas (deje vacío para usar el valor predeterminado de target). Ejemplos: ES2022, DOM, DOM.Iterable, WebWorker, ESNext.

Distribución del proyecto

Carpeta raíz de los archivos de entrada. Deje vacío para inferir.
Carpeta de salida para los archivos emitidos. Deje vacío para emitir junto al origen.
Directorio base para importaciones no relativas. Requerido si se establecen alias de ruta.
Aliases de ruta, uno por línea como alias=destino. Use * para wildcards. Ejemplo: @/*=src/*
Patrones glob para incluir, uno por línea. Por defecto incluye todos los archivos del proyecto si está vacío.
Patrones glob para excluir, uno por línea.

Estrictitud

Validación

Emisión y compatibilidad

Opciones de salida

ANUNCIO · ¿ELIMINAR?

Guía

tsconfig.json Generator

Generador de tsconfig.json

Genera un archivo válido tsconfig.json para proyectos de TypeScript sin tener que recordar los nombres de las opciones ni buscar en las notas de liberación para ver qué cambió en el compilador más reciente. Elige un perfil predeterminado (Node ESM, Node CommonJS, React, Next.js, Biblioteca o Más estricto), ajusta los interruptores de estrictud, añade cualquier alias de ruta y copia el JSON generado a la raíz de tu proyecto.

La configuración del compilador de TypeScript es una superficie áspera: los nombres de las opciones son sensibles a mayúsculas y minúsculas, la lista crece con cada actualización, y una clave mal escrita o desactualizada puede producir el resultado incorrecto sin advertirlo en lugar de fallar rápidamente. Un generador basado en formularios que solo emite las opciones que se marcan es la forma más rápida de obtener una configuración funcional que se ajuste a la ejecución y al flujo de construcción de tu proyecto.

Cómo Usar

  1. Abre el Perfil predeterminado menú desplegable y elige la opción más cercana para tu proyecto. El formulario rellena valores razonables para el objetivo, el sistema de módulos, el modo de JSX y las opciones recomendadas.
  2. Ajusta el Sección de Idioma y Módulos si tu entorno de ejecución necesita un diferente target, module, o moduleResolution. Establece jsx si compiles React.
  3. Configura el Distribución del proyecto campos (rootDir, outDir, baseUrl) para coincidir con la estructura de carpetas. Añade alias de ruta uno por línea como alias=target (por ejemplo @/*=src/*).
  4. Utiliza el Estrictitud y Validación casillas de verificación para activar las verificaciones individuales del compilador. strict activa toda la familia estricta en un solo clic.
  5. El Emisión y compatibilidad sección controla cómo se producen los archivos y cómo funcionan las importaciones por defecto. Activa declaration para bibliotecas o noEmit cuando un bundler maneja la salida.
  6. Copia la configuración generada del panel de salida, o descárgala directamente como tsconfig.json.

Características

  • Perfiles predeterminados – Node (ESM y CommonJS), React, Next.js App Router, Biblioteca y un perfil estricto para nuevos proyectos.
  • Todas las versiones modernas de objetivo – Desde ES5 hasta ES2023 más ESNext, con sistemas de módulos correspondientes incluyendo NodeNext y resolución de bundler.
  • Construcción de alias de ruta – Escribe un alias por línea; el generador conecta automáticamente baseUrl cuando los alias están presentes.
  • Estrictud granular – Activa noUncheckedIndexedAccess, exactOptionalPropertyTypesy otras banderas individuales de la familia estricta.
  • Soporte de JSX – Elige entre react-jsx, react-jsxdev, clásico react, o preserve para los bundlers.
  • Comentarios inline – Cada opción puede anotarse con una breve explicación para que el archivo resultante se documente por sí mismo.
  • Inclusión y exclusión de patrones globales – Entrada multilinea para include y exclude patrones con valores predeterminados razonables por perfil.
  • Modo de biblioteca – El perfil de biblioteca activa declaration, declarationMapy sourceMap así que los consumidores obtienen tipos completos.
  • Copiar o descargar – Coloca el resultado directamente en tu repositorio con un solo clic.

ANUNCIO · ¿ELIMINAR?

Preguntas frecuentes

  1. ¿Qué es tsconfig.json y por qué necesita TypeScript?

    tsconfig.json es el archivo de configuración que lee el compilador de TypeScript para decidir qué archivos pertenecen a un proyecto y cómo compilarlos. Su presencia en un directorio marca que dicho directorio es la raíz de un proyecto de TypeScript. Sin él, el compilador sigue funcionando para archivos aislados, pero herramientas como editores, pipelines de compilación y integraciones de linter dependen de él para compartir una visión consistente del código, del entorno de ejecución objetivo y de la estrictitud de verificación de tipos.

  2. ¿Cuál es la diferencia entre módulo y moduleResolution?

    module controla la sintaxis del JavaScript que emite TypeScript — CommonJS require/exports, módulos ES con import/export, o un híbrido como NodeNext. moduleResolution es independiente y controla cómo se buscan los especificadores de importación en el disco — por ejemplo, si un import sin extensión se resuelve a un archivo .ts, si se respetan los campos de exportaciones en package.json, y si se asume un resolución tipo bundler. Los proyectos modernos con un bundler suelen combinar module: ESNext con moduleResolution: Bundler; los proyectos puros de Node sin un bundler combinan module: NodeNext con moduleResolution: NodeNext.

  3. ¿Qué activa realmente strict?

    strict es una bandera meta que habilita toda la familia estricta en un solo interruptor: noImplicitAny, strictNullChecks, strictFunctionTypes, strictBindCallApply, strictPropertyInitialization, noImplicitThis, alwaysStrict, y useUnknownInCatchVariables. Los nuevos flags estrictos añadidos en futuras versiones del compilador también se incluyen automáticamente. Es posible establecer individualmente cada bandera para sobrescribir el valor predeterminado estricto, pero la mayoría de los nuevos proyectos deberían dejar strict encendido y añadir opciones más agresivas como noUncheckedIndexedAccess encima.

  4. ¿Cómo funcionan los alias de ruta con baseUrl?

    paths define una asignación desde especificadores de importación a ubicaciones reales de archivos, y la búsqueda ocurre relativa a baseUrl. Por ejemplo, baseUrl: "." y paths: { "@/*": ["src/*"] } significa que un import desde @/utils se resuelve a ./src/utils. Los alias de ruta solo afectan la verificación de tipos; los bundlers, ejecutores de pruebas y el entorno de ejecución necesitan su propia configuración equivalente (Vite resolve.alias, Jest moduleNameMapper, campo imports de Node) para que los mismos rutas funcionen en tiempo de ejecución.

  5. ¿Cuándo debe habilitarse noEmit?

    noEmit se utiliza en proyectos donde otra herramienta — típicamente un bundler como Vite, esbuild, webpack o Next.js — produce la salida en JavaScript, y TypeScript se utiliza únicamente para la verificación de tipos. Con noEmit activado, el compilador valida los tipos pero no escribe archivos. También es útil en entornos de CI para un paso rápido de verificación de tipos. Para proyectos de bibliotecas que se publican en npm, dejar noEmit desactivado para que el compilador pueda emitir archivos .js y .d.ts junto con el código fuente.

¿Quieres eliminar publicidad? Adiós publicidad hoy

Instalar extensiones

Agregue herramientas IO a su navegador favorito para obtener acceso instantáneo y búsquedas más rápidas

añadir Extensión de Chrome añadir Extensión de borde añadir Extensión de Firefox añadir Extensión de Opera

¡El marcador ha llegado!

Marcador es una forma divertida de llevar un registro de tus juegos, todos los datos se almacenan en tu navegador. ¡Próximamente habrá más funciones!

ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?

Noticias Aspectos técnicos clave

Involucrarse

Ayúdanos a seguir brindando valiosas herramientas gratuitas

Invítame a un café
ANUNCIO · ¿ELIMINAR?