NerdLang/nerd
🔱 Javascript's God Mode. No VM. No Bytecode. No GC. Just native binaries.
Thành tựu nổi bật
Những danh hiệu mới nhất của dự án
#1 Repository Của Tháng
#1 Repository Của Tháng
#2 Repository Của Tháng
🔱 JavaScript biên dịch trực tiếp thành native binary, không VM không GC
No VM. No Bytecode. No Garbage Collector. Just native binaries.
Nerd (trước đây là NectarJS) là trình biên dịch JavaScript sang mã native viết bằng C++. Thay vì chạy trên máy ảo hay dựa vào garbage collector, Nerd dịch mã JS trực tiếp thành binary thực thi, hỗ trợ biên dịch cho Windows, Mac, Linux, iOS, Android, Raspberry Pi, STM32, Arduino, và cả WASM. Dự án hướng đến việc làm cho JavaScript trở thành ngôn ngữ phổ quát, có thể chạy mọi nơi mà không cần runtime.
✨ Điểm nổi bật
- Biên dịch sang native binary: Không có VM, không có bytecode, không có GC — output là file executable thật sự.
- Hỗ trợ nhiều nền tảng: Windows (x86/ARM), Linux, macOS, Android, iOS, Arduino, STM32, Raspberry Pi, WASM.
- Ba preset:
none,speed,size— tùy chỉnh trade-off giữa hiệu năng và kích thước binary. - Hỗ trợ ES3 với hơn 80%: Bao gồm
.call(),.bind(), Array, Class, JSON, Math, String, Object, Console, và nhiều hơn nữa. - Nhỏ hơn hàng chục lần so với NodeJS: Benchmark cho thấy binary Nerd chỉ 250–424KB trong khi NodeJS cần 28.6MB cho cùng bài test sort 1 triệu phần tử.
- Chạy ngay sau khi biên dịch: Tùy chọn
--runđể thực thi output ngay lập tức. - Hỗ trợ transpile từ ngôn ngữ khác: Ruby (Opal), Python (Brython), TypeScript, và bất kỳ JS nào có thể transpile.
- Stack size tùy chỉnh: Hữu ích trên Windows với
--stack.
💡 Vì sao đáng chú ý
Vấn đề lớn nhất của JavaScript là sự phụ thuộc vào runtime nặng nề. NodeJS hay QuickJS đều cần VM, bytecode, và garbage collector — tất cả tiêu tốn bộ nhớ và dung lượng file lớn. Nerd loại bỏ toàn bộ lớp đó bằng cách biên dịch trực tiếp sang native, cho ra binary chỉ vài trăm KB nhưng vẫn cạnh tranh được về tốc độ. Đặc biệt, việc nhắm đến các nền tảng embedded như Arduino và STM32 mở ra khả năng viết ứng dụng bằng JavaScript cho phần cứng hạn chế tài nguyên — điều mà hầu hết runtime JS không thể làm được.
Dự án vẫn đang trong giai đoạn phát triển mạnh, mới chỉ hỗ trợ ES3 nhưng roadmap hướng đến ES5, ES6 và full NodeJS/NPM ecosystem. Với ai cần chạy JS trên embedded, mobile, hoặc đơn giản muốn có một binary nhỏ gọn thay vì dependency cả NodeJS runtime, Nerd là một lựa chọn đáng theo dõi.
#JavaScript #NativeCompilation #Embedded #WASM #TiniX
Dự án tương tự
Khám phá các dự án và mô hình AI khác có sự tương đồng.
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
Raspberry Pi Pico Arduino core, for all RP2040 and RP2350 boards
Coding articles to level up your development skills
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
all-MiniLM-L6-v2 This is a sentence-transformers(https://www.SBERT.net) model: It maps sentences & paragraphs to a 384 dimensional dense vector space and can be used for tasks like clustering or semantic search. Usage (Sentence-Transformers) Using t...
:electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS