| Crates.io | kiren |
| lib.rs | kiren |
| version | 3.0.0 |
| created_at | 2025-06-18 22:20:11.331624+00 |
| updated_at | 2025-07-23 18:50:45.713323+00 |
| description | A high-performance JavaScript runtime built with Rust - Zero config, single binary, production ready |
| homepage | https://github.com/kirencore/kiren |
| repository | https://github.com/kirencore/kiren |
| max_upload_size | |
| id | 1717656 |
| size | 772,330 |
Rust ile geliştirilmiş yüksek performanslı JavaScript runtime'ı.
# Gereksinimler: Rust 1.70+, Git
git clone https://github.com/mertcanaltin/kiren.git
cd kiren
cargo build --release
# 1. Clone repository
git clone https://github.com/mertcanaltin/kiren.git
cd kiren
# 2. Quick start with Make
make build # Development build
make dev # Build + REPL
make test # Run tests
make server # HTTP server demo
# 3. Or use Cargo directly
cargo build # Development build
cargo run examples/hello.js # Run example
cargo run -- --repl # Interactive REPL
cargo test # Run tests
cargo build --release # Optimized build
# 4. Development helpers
make format # Format code
make clippy # Run linter
make check # All quality checks
make examples # List available examples
# Use the build script for more options
./scripts/build.sh release # Optimized build
./scripts/build.sh test # Run tests
./scripts/build.sh check # Full quality check
./scripts/build.sh help # See all options
./target/release/kiren examples/hello.js
./target/release/kiren --repl
# One-line installer (macOS/Linux)
curl -fsSL https://raw.githubusercontent.com/kirencore/kiren/main/install.sh | bash
# Homebrew (macOS/Linux) - Coming Soon
brew install kiren
# Cargo (Rust users)
cargo install --git https://github.com/kirencore/kiren
# NPM (Node.js users) - Coming Soon
npm install -g kiren-runtime
# Docker
docker run -it ghcr.io/kirencore/kiren --repl
Download pre-built binaries from GitHub Releases
Available Platforms:
kiren-linux-x64.tar.gz, kiren-linux-arm64.tar.gzkiren-macos-x64.tar.gz, kiren-macos-arm64.tar.gzkiren-windows-x64.zip# Clone repository
git clone https://github.com/kirencore/kiren.git
cd kiren
# Build release
cargo build --release
# Install locally
cp target/release/kiren /usr/local/bin/
Detaylı kurulum talimatları: docs/DISTRIBUTION.md
console.log("Hello, Kiren!");
const sum = (a, b) => a + b;
console.log("5 + 3 =", sum(5, 3));
// setTimeout
setTimeout(() => {
console.log("Bu 1 saniye sonra çalışır");
}, 1000);
// setInterval
const intervalId = setInterval(() => {
console.log("Bu her saniye tekrarlanır");
}, 1000);
// 5 saniye sonra durdur
setTimeout(() => {
clearInterval(intervalId);
console.log("Interval durduruldu");
}, 5000);
// Dosya yazma ve okuma
fs.writeFile("test.txt", "Hello from Kiren!");
const content = fs.readFile("test.txt");
console.log("Dosya içeriği:", content);
// Dizin oluşturma
fs.mkdir("yeni-klasor");
console.log("Klasör var mı?", fs.exists("yeni-klasor"));
// Environment variables
console.log("HOME dizini:", process.env.HOME);
// Command line arguments
console.log("Argümanlar:", process.argv);
// Current working directory
console.log("Çalışma dizini:", process.cwd());
fetch("https://api.github.com/users/mertcanaltin")
.then(() => console.log("İstek başarılı"))
.catch(error => console.log("Hata:", error));
// Zero-config production server
const server = http.createServer();
server.get("/", () => "Hello from Kiren!");
server.get("/api/users", () => ({ users: ["Alice", "Bob"] }));
server.post("/api/data", () => ({ message: "Data received" }));
server.listen(3000);
console.log("🚀 Server ready at http://localhost:3000");
FROM scratch
COPY kiren /kiren
COPY app.js /app.js
CMD ["/kiren", "/app.js"]
# Result: 15MB container vs Node.js 500MB+
Gerçek Benchmark Sonuçları (vs Node.js v20.18.1):
| Metric | Kiren v0.1.0 | Node.js | Sonuç |
|---|---|---|---|
| Startup Time | 72ms | 22ms | Node.js 3.3x daha hızlı |
| Fibonacci(35) | 54ms | 46ms | Node.js 1.2x daha hızlı |
| Loop (10M) | 37ms | 8ms | Node.js 4.6x daha hızlı |
Not: v0.1.0'da Kiren henüz Node.js'den hızlı değil. Bu bir öğrenme projesi ve functional runtime olarak değerlendirilmeli. Detaylı benchmark sonuçları için
benchmarks/BENCHMARK_RESULTS.mddosyasına bakın.
console.log(), console.time(), console.timeEnd()setTimeout, setInterval, clearTimeout, clearIntervalfs.readFile, fs.writeFile, fs.exists, fs.mkdirprocess.env, process.argv, process.cwd(), process.exit()Kiren'e katkıda bulunmak istiyorsanız:
cargo buildgit checkout -b feature/amazing-featurecargo testDetaylar için: CONTRIBUTING.md
MIT lisansı altında dağıtılmaktadır. Detaylar için LICENSE dosyasına bakın.
Mert Can Altin - @mertcanaltin
Proje Linki: https://github.com/mertcanaltin/kiren