Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

ModernCppStarter

Plantilla C++ moderna con CMake, CI, cobertura de código, formateo automático y gestión reproducible de dependencias mediante CPM.cmake.

Ficha actualizada 18 sept 2026, 19:54 · upstream 30 may 2026, 18:52 · release v0.19.2

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es ModernCppStarter

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

ModernCppStarter es una plantilla para iniciar proyectos en C++ moderno que automatiza tareas repetitivas como la configuración de CMake, integración continua, pruebas unitarias, análisis estático y generación de documentación. Incluye soporte para sanitizadores, formateo con clang-format y gestión de dependencias reproducible mediante CPM.cmake.

La estructura del proyecto separa claramente el código de la biblioteca del ejecutable, facilitando su mantenimiento y reutilización. Soporta tanto bibliotecas header-only como proyectos completos con múltiples subproyectos independientes. La documentación se genera automáticamente con Doxygen y se publica en GitHub Pages al crear un release.

Para el desarrollo, proporciona directorios predefinidos para pruebas (test), ejecutables de ejemplo (standalone) y documentación (documentation). Incluye un directorio 'all' que permite construir todos los subproyectos simultáneamente, ideal para integración con IDEs. La configuración soporta múltiples plataformas mediante GitHub Actions.

CASOS DE USO
  • Inicializar rápidamente un nuevo proyecto C++ moderno con estructura profesional
  • Integrar una suite de pruebas unitarias automatizada con CTest y cobertura de código
  • Configurar formateo automático de código fuente con clang-format y cmake-format
  • Generar documentación técnica automática con Doxygen y publicar en GitHub Pages
PUNTOS DESTACADOS
  • Prácticas modernas de CMake según recomendaciones de la comunidad
  • Integración continua automatizada con GitHub Actions para múltiples plataformas
  • Gestión reproducible de dependencias mediante CPM.cmake sin obligar a usuarios finales
  • Soporte nativo para sanitizadores (Address, Memory, Undefined, etc.) y analizadores estáticos
PRECAUCIONES
  • Requiere instalación manual de herramientas externas como clang-format, cmake-format y Doxygen
  • No incluye CPack por defecto para generar instaladores de paquetes
  • La gestión de dependencias externa requiere conexión a internet durante la configuración inicial
  • Uso de GLOB en CMakeLists.txt que puede requerir reinicio manual tras cambios estructurales
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Para despliegue, usar el directorio 'all' como punto de entrada principal para IDEs. Configurar variable de entorno CPM_SOURCE_CACHE para permitir trabajo offline posterior. Añadir token de Codecov en GitHub Secrets si se usa cobertura. Eliminar directorios no necesarios (standalone, documentation) si no son requeridos.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
No detectados
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
No detectados
06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.