¿Qué es TypeDoc y para qué sirve?
\n\nTypeDoc es un potente generador de documentación para proyectos en TypeScript. Crea automáticamente páginas HTML hermosas y estructuradas basadas en tus comentarios en el código, escritos en formato JSDoc. Si alguna vez has escrito código en TypeScript y has querido obtener rápidamente documentación similar a la documentación oficial de TypeScript o de bibliotecas populares, TypeDoc es exactamente lo que necesitas.
\n\n¿Para qué sirve? En el desarrollo moderno, la documentación no es un lujo, sino una necesidad. TypeDoc resuelve varias tareas clave:
\n- \n
- Automatización: No necesitas escribir documentación manualmente. Basta con añadir comentarios a funciones, clases, interfaces y tipos, y TypeDoc generará un sitio listo. \n
- Actualización: La documentación siempre coincide con el código, ya que se genera directamente a partir de él. \n
- Navegación: TypeDoc crea una navegación cómoda por el proyecto: estructura de árbol, búsqueda, enlaces a tipos. \n
- Soporte de TypeScript: Comprende tipos complejos de TypeScript: genéricos, tipos utilitarios, sobrecargas de funciones, módulos y espacios de nombres. \n
- Extensibilidad: TypeDoc admite temas, plugins y personalización. \n
TypeDoc es ideal para:
\n- \n
- Bibliotecas y paquetes distribuidos a través de npm. \n
- Proyectos internos donde se necesita familiarizar rápidamente a nuevos desarrolladores con el código. \n
- Documentación de API para aplicaciones de servidor en TypeScript. \n
- Proyectos educativos donde la claridad es importante. \n
Instalación de TypeDoc
\n\nTypeDoc se instala a través de npm (Node Package Manager). Asegúrate de tener Node.js instalado (versión 14 o superior).
\n\nLa forma más sencilla es instalar TypeDoc de forma global:
\nnpm install -g typedoc\n\nSin embargo, para proyectos se recomienda instalarlo como dependencia local de desarrollo:
\nnpm install --save-dev typedoc\n\nDespués de la instalación, puedes verificar la versión:
\nnpx typedoc --version\n\nSi usas Yarn:
\nyarn add -D typedoc\n\nPara pnpm:
\npnpm add -D typedoc\n\nInicio rápido con ejemplo de código
\n\nVamos a crear un proyecto simple y generar documentación para él.
\n\nPaso 1: Crea el proyecto
\nmkdir my-typedoc-project\ncd my-typedoc-project\nnpm init -y\n\nPaso 2: Instala TypeDoc
\nnpm install --save-dev typedoc\n\nPaso 3: Crea un archivo de código src/index.ts
/**\n * Módulo para trabajar con operaciones matemáticas.\n * @module MathUtils\n */\n\n/**\n * Suma dos números.\n * @param a - Primer número\n * @param b - Segundo número\n * @returns Suma de a y b\n * @example\n * ```typescript\n * const result = add(2, 3);\n * console.log(result); // 5\n * ```\n */\nexport function add(a: number, b: number): number {\n return a + b;\n}\n\n/**\n * Resta el segundo número del primero.\n * @param a - Minuendo\n * @param b - Sustraendo\n * @returns Diferencia de a y b\n */\nexport function subtract(a: number, b: number): number {\n return a - b;\n}\n\n/**\n * Interfaz para representar un punto en el espacio bidimensional.\n */\nexport interface Point {\n /** Coordenada X */\n x: number;\n /** Coordenada Y */\n y: number;\n}\n\n/**\n * Calcula la distancia entre dos puntos.\n * @param p1 - Primer punto\n * @param p2 - Segundo punto\n * @returns Distancia entre los puntos\n */\nexport function distance(p1: Point, p2: Point): number {\n const dx = p2.x - p1.x;\n const dy = p2.y - p1.y;\n return Math.sqrt(dx * dx + dy * dy);\n}