22 مستودعات
C++ extensions that provide the Node.js runtime with low-level system access.
Distinct from Native Addon Loaders: Existing candidates focus on loaders or specific domains like logging/crypto rather than the general nature of a native addon library.
Explore 22 awesome GitHub repositories matching programming languages & runtimes · Node.js Native Addons. Refine with filters or upvote what's useful.
Robotjs is a native Node.js automation library and desktop input simulator. It uses C++ bindings to provide low-level access to operating system functions, allowing for the programmatic control of the mouse and keyboard and the analysis of screen pixels. The library functions as a toolkit for automating user interfaces and desktop workflows, including those within Electron applications. It enables the simulation of key presses and mouse movements to automate interactions with desktop software and perform automated data entry. Its capabilities extend to screen pixel analysis, where it capture
Implements a native Node.js addon using C++ bindings for low-level access to OS input and display functions.
node-canvas is a server-side 2D vector graphics and image processing library for Node.js. It provides a server-side implementation of the HTML5 Canvas API using the Cairo graphics library as its rendering engine to draw shapes, text, and paths. The library enables the programmatic generation of dynamic images and the creation of scalable vector graphics and PDF documents. It supports the registration of custom and system fonts for typography rendering and allows for the import of image assets via local paths, buffers, data URIs, and remote URLs. Capabilities include low-level pixel manipulat
Implements high-performance graphics processing by binding JavaScript calls to native C++ implementations.
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 ope
Compiles C and C++ source code into binary modules that can be loaded as native addons by Node.js.
uWebSockets.js is a high-performance tool for building WebSocket and HTTP servers within Node.js. It focuses on high-throughput web servers and real-time data streaming, enabling the creation of network applications that handle a large number of concurrent connections with low memory and CPU overhead. The project distinguishes itself through a native C++ implementation that integrates directly with the Node.js event loop. It utilizes native-layer route matching and a shared memory architecture to minimize allocation overhead and avoid data duplication during message transmission. The impleme
Provides a native C++ addon that integrates high-performance protocol implementations directly into the Node.js runtime.
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
Enables the creation of high-performance Node.js native extensions specifically using the Rust programming language.
This is a Node.js library for securely hashing and verifying passwords using the bcrypt adaptive hashing algorithm. It functions as a password security module that transforms plain-text credentials into protected hashes and generates cryptographically secure salts. The implementation allows for the adjustment of computational cost to resist brute-force attacks. It provides utilities for password hash verification and the extraction of hash metadata to determine the number of encryption rounds used. The project covers a range of security and access control capabilities, including credential s
Utilizes a C++ native addon to provide high-performance implementations of the bcrypt algorithm.
هذه مكتبة لتجزئة كلمات المرور bcrypt ووحدة تشفير لـ Node.js. توفر مجموعة أدوات لتوليد أملاح (salts) آمنة، وحساب تجزئات قوية تشفيرياً، والتحقق من كلمات المرور لحماية بيانات اعتماد المستخدم من الوصول غير المصرح به. تنفذ المكتبة التجزئة التكيفية، باستخدام عامل تكلفة قابل للتكوين لزيادة الجهد الحسابي المطلوب لكسر كلمات المرور بالقوة الغاشمة. تتضمن أداة للتحقق من كلمة المرور تحمي عملية المقارنة من هجمات التوقيت. يغطي المشروع تجزئة كلمات المرور الآمنة وتوليد الأملاح، بالإضافة إلى مرافق لاستخراج تكلفة التجزئة والتحقق من كلمة المرور. تدعم هذه القدرات تخزين كلمات المرور الآمن وسير عمل مصادقة المستخدم.
Binds a C++ implementation of the bcrypt algorithm to Node.js using native addons.
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
Provides a comprehensive framework for building high-performance native extensions for Node.js using Rust.
better-sqlite3 is a high-performance SQLite3 client for Node.js that executes queries synchronously, returning results directly without callbacks or promises. It compiles as a native addon using N-API, binding directly to the SQLite3 C library for immediate query execution and zero-copy result serialization into native JavaScript objects. The library is optimized for Write-Ahead Logging (WAL) mode, enabling faster concurrent reads and writes in web applications. It provides durability level tuning through the synchronous pragma, allowing adjustments between FULL, NORMAL, and OFF modes to bala
Compiles as a Node.js native addon using N-API for direct C-level access to SQLite3.
Node.js is an open-source, cross-platform JavaScript runtime environment built on the V8 engine, designed for executing JavaScript code outside a web browser. It operates as a server-side JavaScript platform with an event-driven, non-blocking I/O architecture that enables building scalable network applications and web servers. The runtime integrates the CommonJS module system for synchronous module loading and the npm ecosystem for sharing and reusing packages. The platform provides comprehensive capabilities for web server development, including creating HTTP and HTTPS servers, managing HTTP
Provides a stable C API for building native addons that remain compatible across Node.js versions.
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
Offers technical guidance on building high-performance native extensions using Rust and maintaining ABI stability.
node-sqlite3 is a relational database client and a set of native bindings that allow Node.js applications to interact with SQLite databases. It functions as a C++ native addon, linking JavaScript to the SQLite C library to manage data stored in local files or in-memory stores. The project includes optional support for SQLCipher, enabling page-level encryption to secure local database files. The driver covers a wide range of database management capabilities, including executing SQL queries with parameter binding, managing connections to database files, and preparing statements for repeated ex
Links JavaScript to the SQLite C library as a C++ native addon for direct memory access.
Prek is a Git hook manager written in Rust that runs configured hooks as a single binary without requiring Python or other external runtimes. It executes hooks faster than standard tools through parallel processing and bundled Rust implementations, and includes a built-in hook repository that enables fully offline operation without network access or environment setup. The tool supports both TOML and YAML configuration formats with identical semantics, and can run hooks from existing pre-commit configuration files without modification. Prek distinguishes itself through workspace-aware monorepo
Ships bundled Rust implementations of common hooks for faster startup and lower overhead.
j2objc هو مترجم من مصدر إلى مصدر (transpiler) يحول كود مصدر Java إلى Objective-C. يعمل كمنفذ منطق عبر الأنظمة الأساسية، مما يسمح بمشاركة منطق التطبيق ونماذج البيانات المكتوبة بـ Java وتنفيذها على iOS. لدعم هذه الترجمة، يوفر المشروع تنفيذاً بـ Objective-C لفئات Java الأساسية وواجهات برمجة التطبيقات لمحاكاة بيئة وقت تشغيل Java. يتضمن النظام ترجمة متخصصة لمكتبات Java ويوفر تعييناً لحقن التبعية وتعليقات التحليل الثابت للحفاظ على البيانات التعريفية. كما يتيح تحويل اختبارات JUnit إلى ثنائيات قابلة للتنفيذ للتحقق من الاتساق المنطقي على أجهزة الهاتف المحمول. لتحسين تطبيقات iOS الناتجة، يوفر المشروع أدوات لاكتشاف الكود غير المستخدم والقضاء على الكود الميت. كما يسمح باستبدال الفئات المترجمة تلقائياً بتنفيذات أصلية مكتوبة يدوياً لزيادة سرعة التنفيذ.
Allows replacing automatically translated classes with hand-written native implementations to increase execution speed.
NodeGit is a native Node.js binding library that wraps the libgit2 C API, providing direct Git repository operations from JavaScript without shelling out to the Git command-line interface. It exposes Git operations such as cloning remote repositories, opening local repositories, reading file contents from specific commits, and walking through commit history, all through a Promise-based asynchronous API that prevents event loop starvation by offloading blocking operations to a worker pool. The library distinguishes itself by bridging the C/JavaScript boundary through N-API, with reference-coun
Calls Git operations directly from JavaScript with native performance, avoiding subprocess overhead.
Iptvnator is an Electron-based desktop application for streaming live television and radio. It serves as an IPTV player and playlist manager that supports M3U, Xtream Codes, and Stalker portals, providing a unified interface for organizing and viewing media lists. The application functions as both an internal player and an external player wrapper, allowing users to hand off stream URLs to native third-party media players to bypass browser codec limitations. It includes a dedicated XMLTV program guide that maps external schedule data to live channels for broadcast discovery and catchup feature
Embeds a libmpv native addon within Electron for low-latency video playback.
opencv4nodejs هي مجموعة من مغلفات JavaScript وإضافة C++ أصلية توفر روابط Node.js لمكتبة OpenCV. تعمل كمكتبة للرؤية الحاسوبية وإطار عمل لمعالجة الصور، حيث تعرض خوارزميات C++ عالية الأداء لبيئة JavaScript. يمكن المشروع من تنفيذ خوارزميات الرؤية لاكتشاف الوجوه، وتتبع الكائنات، وتحليل البيانات المرئية باستخدام الشبكات العصبية العميقة. يتضمن قدرات لتصنيف أنماط البيانات، والتعرف على أنماط النصوص، وتحديد معالم الوجه والإيماءات. يغطي إطار العمل سطح قدرات واسع بما في ذلك معالجة الصور الآلية، والتعرف الضوئي على الحروف، وتحليل الفيديو في الوقت الفعلي. يوفر أدوات لعمليات مصفوفة الحساب، والوصول إلى بيانات البكسل، وإدارة ملفات الصور والتقاط الفيديو المباشر. تتم إدارة الموارد من خلال تنفيذ المهام غير المتزامن وتتبع الذاكرة الخارجية للحفاظ على استجابة حلقة الأحداث.
Functions as a C++ native addon providing the Node.js runtime with low-level access to OpenCV algorithms.
This project is a boilerplate and starter for building cross-platform desktop applications that integrate a web-based frontend with a native shell. It provides a pre-configured development environment combining Electron, Vite, and Vue to establish a frontend-driven desktop framework. The setup features an integrated development workflow with hot module replacement and automatic reloading for both the main and renderer processes. This allows for real-time updates to the desktop application shell and user interface components without requiring manual restarts. The project covers native system
Supports the inclusion of compiled C or C++ native addons for high-performance execution within the application.
Rustler هي مجموعة أدوات وواجهة لبناء إضافات أصلية آمنة وعالية الأداء تدمج كود Rust مع الجهاز الافتراضي BEAM. توفر جسراً لكتابة دوال أصلية بلغة Rust تتكامل مع Erlang و Elixir. يركز المشروع على منع تعطل الجهاز الافتراضي عن طريق التقاط ذعر Rust أثناء تنفيذ الدوال الأصلية. ويستخدم واجهة آمنة لتغليف المؤشرات الخام وتوفير تجريدات آمنة للأنواع للإضافات الأصلية. تغطي مجموعة الأدوات تجميع البيانات عبر اللغات من خلال تحويل المصطلحات القائم على السمات (Traits) وتدير دورة حياة كائنات الذاكرة عبر إدارة الموارد المحسوبة بالمرجع. تسمح هذه القدرات باستبدال الكود المفسر بدوال Rust مجمعة لتحسين سرعة التنفيذ.
Ships a toolkit for implementing high-performance Rust native extensions that safely handle data terms.
هذا المشروع عبارة عن مورد تعليمي شامل ودليل تدريبي لبناء وتدريب ونشر نماذج تعلم الآلة باستخدام TensorFlow 2. يعمل كدليل تعليمي منظم يغطي مفاهيم التعلم العميق الأساسية، بما في ذلك معماريات الشبكات العصبية، والاشتقاق التلقائي، وعمليات الموترات (Tensors). يوفر الدليل توجيهات تقنية حول تحسين كفاءة التنفيذ من خلال إدارة ذاكرة GPU، والتدريب الموزع، وتكميم النماذج (Model Quantization). كما يتضمن أدلة مفصلة لبناء خطوط معالجة بيانات عالية الأداء وتصدير النماذج لخوادم الإنتاج، والأجهزة المحمولة، ومتصفحات الويب. تغطي المادة مجموعة واسعة من القدرات، بما في ذلك تطوير النماذج باستخدام الشبكات التلافيفية (CNN) والمتكررة (RNN)، وتنفيذ دوال خسارة وطبقات مخصصة، واستخدام النماذج المدربة مسبقاً للتعلم بنقل المعرفة (Transfer Learning). كما يتناول استراتيجيات النشر للأجهزة الطرفية (Edge Devices) واستخدام بيئات التشغيل السحابية لتسريع العتاد. تم تنفيذ المادة كمجموعة من دفاتر Jupyter Notebooks.
Demonstrates executing saved models in Node.js using native C++ bindings to avoid conversion steps.