awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
friendlyanon avatar

friendlyanon/cmake-init

0
View on GitHub↗
2,488 stars·93 forks·CMake·gpl-3.0·26 views

Cmake Init

cmake-init is a project generator and build system boilerplate designed to automate the initialization of C++ projects. It provides a framework for creating standardized project layouts and build configurations through template-based generation and user-defined prompts.

The project functions as a development workflow automator, integrating static analysis, code formatting, and documentation generation directly into the build pipeline. It includes a dependency management system for vendoring external libraries and managing transitive dependencies to ensure consistent package discovery for downstream consumers.

The system further covers software quality assurance through code coverage tracking and the automation of source code formatting. It also provides mechanisms for bundling multiple installation packages from a single source tree and extracting technical documentation from source code comments.

Features

  • C-Family Development Workflows - Automates the C++ development workflow by unifying static analysis, formatting, and documentation within the build system.
  • Project Templates - Provides pre-configured blueprints for creating standardized C++ project structures and boilerplate.
  • Dependency Vendors - Archives external dependency source code locally to support consistent package discovery and offline builds.
  • Source Vendoring - Provides a mechanism for vendoring external third-party libraries to ensure consistent package discovery.
  • Dependency Management - Provides tooling for retrieving and integrating external libraries specifically within C++ development environments.
  • Package Dependency Managers - Connects the CMake build system to external package managers for simplified retrieval and linking of libraries.
  • C++ Project Templates - Provides standardized configurations and scaffolding for initializing C++ libraries and executables using CMake.
  • Project Generators - Automates the creation of initial project structures, boilerplate code, and CMake configuration files.
  • Project Initializers - Bootstraps new C++ projects with a relocatable structure and target definitions for developers and consumers.
  • CMake Integrations - Automates the build pipeline by integrating linting, formatting, and testing directly into the CMake configuration.
  • Boilerplates - Offers a comprehensive set of predefined structures for managing C++ libraries and executables with built-in installation logic.
  • Project Structures - Generates standardized folder layouts for executables and libraries to ensure consistent project organization.
  • Dependency Requirement Propagation - Tracks library requirements through build targets to ensure all transitive dependencies are propagated to consumers.
  • Code Formatting - Automates source code formatting and style enforcement by running linting tools during the build.
  • Documentation Generators - Generates technical documentation by extracting and formatting information from source code comments.
  • Build-Time Tooling - Integrates external formatting and linting binaries directly into the build phase to enforce code quality.
  • Inline Documentation Extractors - Extracts inline comments from source files to generate formatted technical documentation.
  • Documentation Generation - Automates the extraction of comments and contracts from C++ source code to produce structured technical documentation.
  • CMake-Based Managers - Implements a system for vendoring external libraries and managing transitive dependencies within the CMake ecosystem.
  • Code Coverage Analysis - Processes execution data through analysis tools to track code coverage and identify untested paths.
  • Code Quality Tools - Integrates static analysis and code coverage tools to ensure high software quality during the build process.
  • Static Code Analysis - Integrates static analysis tools into the build pipeline to detect logical errors and common bugs.

Star history

Star history chart for friendlyanon/cmake-initStar history chart for friendlyanon/cmake-init

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Cmake Init

Similar open-source projects, ranked by how many features they share with Cmake Init.
  • thelartians/moderncppstarterTheLartians avatar

    TheLartians/ModernCppStarter

    5,306View on GitHub↗

    ModernCppStarter is a pre-configured project boilerplate and bootstrapping environment for C++ libraries and executables. It provides a standardized set of CMake build configurations and templates to automate the initialization of new projects. The project integrates a comprehensive static analysis suite and documentation automation. It includes systems for enforcing code quality through sanitizers and analyzers, as well as a pipeline for generating and deploying technical documentation during project releases. The template covers broader development infrastructure, including dependency mana

    CMakebootstrapcccache
    View on GitHub↗5,306
  • myriad-dreamin/tinymistMyriad-Dreamin avatar

    Myriad-Dreamin/tinymist

    2,907View on GitHub↗

    Tinymist is a comprehensive suite of tools for Typst document authoring, serving as a language server, document compiler, and project manager. It provides a standardized language service via the Language Server Protocol to enable editor features such as autocompletion, navigation, and semantic highlighting. The project distinguishes itself by integrating a TCP-based live preview server for real-time visual rendering and an advanced static analysis tool that utilizes abstract syntax trees and bidirectional type checking. It also includes a project management system capable of handling multi-fi

    Rustdapdap-serverformatter
    View on GitHub↗2,907
  • cpp-best-practices/cppbestpracticescpp-best-practices avatar

    cpp-best-practices/cppbestpractices

    8,766View on GitHub↗

    This project is a curated collection of guidelines and technical resources designed to improve C++ code safety, maintainability, and performance. It provides a comprehensive set of coding standards and best practices for establishing consistent naming, formatting, and structural patterns across C++ codebases. The guide offers specific technical advice on performance optimization, including methods for minimizing object copying, optimizing memory allocation, and reducing compilation cycles. It also provides a directory of tooling recommendations for implementing static analysis, fuzz testing,

    best-practicescpp
    View on GitHub↗8,766
  • clibs/clibclibs avatar

    clibs/clib

    5,133View on GitHub↗

    clib is a C language package manager and dependency manager used to install, update, and manage external C libraries and executable dependencies from remote repositories. It functions as a distribution tool for structuring source code and metadata to publish C libraries and a development toolkit for maintaining consistent build environments. The project provides a framework for C library distribution and dependency resolution, utilizing manifest files to track required library versions and ensure reproducible builds across different systems. It streamlines the C development workflow by managi

    Ccclibmanager
    View on GitHub↗5,133
See all 30 alternatives to Cmake Init→

Frequently asked questions

What does friendlyanon/cmake-init do?

cmake-init is a project generator and build system boilerplate designed to automate the initialization of C++ projects. It provides a framework for creating standardized project layouts and build configurations through template-based generation and user-defined prompts.

What are the main features of friendlyanon/cmake-init?

The main features of friendlyanon/cmake-init are: C-Family Development Workflows, Project Templates, Dependency Vendors, Source Vendoring, Dependency Management, Package Dependency Managers, C++ Project Templates, Project Generators.

What are some open-source alternatives to friendlyanon/cmake-init?

Open-source alternatives to friendlyanon/cmake-init include: thelartians/moderncppstarter — ModernCppStarter is a pre-configured project boilerplate and bootstrapping environment for C++ libraries and… myriad-dreamin/tinymist — Tinymist is a comprehensive suite of tools for Typst document authoring, serving as a language server, document… cpp-best-practices/cppbestpractices — This project is a curated collection of guidelines and technical resources designed to improve C++ code safety,… clibs/clib — clib is a C language package manager and dependency manager used to install, update, and manage external C libraries… cpm-cmake/cpm.cmake — CPM.cmake is a dependency manager and package resolver for C and C++ projects that integrates directly into the CMake… ttroy50/cmake-examples — This project is a collection of reference implementations and templates for CMake build patterns and configuration…