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
nodejs avatar

nodejs/node-gyp

0
View on GitHub↗
10,647 stars·1,869 forks·Python·MIT·16 views

Node Gyp

node-gyp is a build system wrapper and compilation tool designed to transform C and C++ source code into binary modules for the Node.js runtime. It functions as a native module compiler that orchestrates the process of converting native source code into binary bindings for high-performance execution.

The project provides cross-platform compilation by managing different compilers and SDKs across Windows, macOS, and Linux. It translates a single project configuration into platform-specific build files, such as Makefiles or Visual Studio projects, to ensure consistent builds across different operating systems.

Beyond standard binary compilation, the tool handles the procurement of remote source files and the management of versioned runtime header files required for binary compatibility. It also supports the generation of portable WebAssembly modules.

Features

  • Add-on Compilation Toolchains - Converts C and C++ source code into binary bindings and modules for high-performance execution in the Node.js runtime.
  • Native Module Toolchains - Provides the primary toolchain for bootstrapping and compiling C and C++ native extensions for the Node.js runtime.
  • Build Environment Configurators - Sets architecture, compiler versions, and system paths using flags or configuration files to prepare the build process.
  • Cross-Platform and Native Compilation - Generates platform-specific build files and manages compiler toolchains to ensure native code compiles across different operating systems.
  • Build Toolchain Abstractions - Maps high-level build commands to specific compilers and SDKs based on the detected host operating system.
  • Multi-Toolchain Integration - Connects with various compilers and SDKs across different operating systems to ensure consistent code compilation.
  • Platform Build File Generators - Translates a central JSON project definition into platform-specific build files like Makefiles or Visual Studio projects.
  • Platform-Specific Build File Generation - Creates platform-specific configuration files, such as Makefiles, based on a central project definition.
  • Build Configuration Management - Reads compilation settings from configuration files or package manifests to determine how native code is built.
  • Binary Compilation - Transforms C and C++ source code into binary modules that the JavaScript runtime can load.
  • Node.js Native Addons - Converts C and C++ source code into binary modules that can be loaded and executed within a Node.js environment.
  • Build Tools - Compiles C and C++ source code into binary modules that can be loaded as native addons by Node.js.
  • Build File Generators - Generates platform-specific build files such as Makefiles and Visual Studio projects from a single project configuration.
  • Build-Time Source Procurement - Downloads and extracts external dependencies from HTTP endpoints during the build process to satisfy native requirements.
  • Target-Specific Build Settings - Builds native modules for specific runtime versions by specifying target versions and header locations.
  • Toolchain Path Resolution - Determines system paths and compiler versions via command-line flags and configuration files to locate build tools.
  • External Source Inclusions - Downloads remote source files via HTTP and integrates them into the compilation process.
  • Native Library Integrations - Fetches remote source files and integrates external C++ libraries into the build process for native extensions.
  • Runtime Header Management - Downloads and links specific versioned C++ header files to ensure binary compatibility with the target runtime.
  • WebAssembly Glue Code Generators - Builds native source code into portable WebAssembly formats, providing the necessary interface for web environments.
  • WebAssembly Compilation - Builds native modules into a portable WebAssembly format for use in web environments.

Star history

Star history chart for nodejs/node-gypStar history chart for nodejs/node-gyp

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

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

Projects sharing features with Node Gyp

These projects share indexed features with Node Gyp. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • kitware/cmakeKitware avatar

    Kitware/CMake

    7,968View on GitHub↗

    CMake is a cross-platform build system generator and build automation tool. It is used to define build requirements and dependencies for C and C++ source code, managing the compilation and linking process across different operating systems. The project functions by generating platform-specific build files and scripts from a single configuration. This allows for the standardization of how software is compiled and packaged for compilers and development tools across various environments. The tool covers C++ project configuration and native application compilation for desktop and embedded system

    C
    View on GitHub↗7,968
  • napi-rs/napi-rsnapi-rs avatar

    napi-rs/napi-rs

    7,500View on GitHub↗

    napi-rs is a framework and toolkit for building high-performance native extensions for Node.js using Rust. It functions as a bridge between Rust and JavaScript runtimes, enabling the conversion of data types and the execution of native functions within a JavaScript environment. The project provides a native binary compiler and a cross-platform module orchestrator to automate the compilation and publishing of packages across multiple operating systems and architectures. It generates corresponding JavaScript type definitions and platform-specific binaries to ensure consistent installation. The

    Rustjavascriptnapinapi-rs
    View on GitHub↗7,500
  • neon-bindings/neonneon-bindings avatar

    neon-bindings/neon

    8,410View on GitHub↗

    Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves as a foreign function interface bridge and a toolchain for bootstrapping, compiling, and managing Rust-based extensions. The project provides a cross-language memory manager that handles buffers and object borrowing to ensure safe memory access between Rust and JavaScript. It enables the mapping of data types and function calls across the language boundary, allowing Rust functions to be exported to the script environment and JavaScript functions to be called from Rust. The f

    Rust
    View on GitHub↗8,410
  • theos/theostheos avatar

    theos/theos

    4,867View on GitHub↗

    Theos is a cross-platform mobile development toolchain and build system designed for compiling and packaging software for mobile operating systems. It functions as a system tweak kit and runtime hooking framework, allowing developers to create modifications that alter the internal behavior of mobile OS environments. The project distinguishes itself by providing specialized preprocessor syntax that generates low-level API calls, removing the boilerplate code typically required for function and method hooking. It enables dynamic runtime method swizzling and class extensions, allowing developers

    Makefilebuild-systemioslinux
    View on GitHub↗4,867
Compare all 30 related projects→

Frequently asked questions

What does nodejs/node-gyp do?

node-gyp is a build system wrapper and compilation tool designed to transform C and C++ source code into binary modules for the Node.js runtime. It functions as a native module compiler that orchestrates the process of converting native source code into binary bindings for high-performance execution.

What are the main features of nodejs/node-gyp?

The main features of nodejs/node-gyp are: Add-on Compilation Toolchains, Native Module Toolchains, Build Environment Configurators, Cross-Platform and Native Compilation, Build Toolchain Abstractions, Multi-Toolchain Integration, Platform Build File Generators, Platform-Specific Build File Generation.

Which projects share features with nodejs/node-gyp?

Projects with overlapping indexed features include: kitware/cmake — CMake is a cross-platform build system generator and build automation tool. It is used to define build requirements… napi-rs/napi-rs — napi-rs is a framework and toolkit for building high-performance native extensions for Node.js using Rust. It… neon-bindings/neon — Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves… theos/theos — Theos is a cross-platform mobile development toolchain and build system designed for compiling and packaging software… wasm-bindgen/wasm-pack — wasm-pack is a build tool and workflow orchestrator for compiling Rust code to WebAssembly. It coordinates the… thedodd/trunk — Trunk is a build tool and development server for compiling Rust code to WebAssembly and packaging it for browser…