nodejs-bundler
v0.1.0
Published
A tool to compress an entire Node.js project into a single, minimized file
Maintainers
Readme
nodejs-bundler
Node.js projelerini tek bir .bls dosyasına sıkıştıran güçlü bir araç.
Kurulum
npm install -g nodejs-bundlerVeya doğrudan npx ile kullanın:
npx nodejs-bundlerKullanım
Komut Satırı Arayüzü (CLI)
Bir projeyi sıkıştırma
nodejs-bundler bundle /proje/yolu -o çıktı.blsSeçenekler:
-o, --output <dosya>: Çıktı dosyası yolu (varsayılan: bundle.bls)-e, --entry <dosya>: Giriş noktası dosyası (package.json main'i geçersiz kılar)--no-minify: Minify işlemini devre dışı bırakır--include-node-modules: node_modules'ı pakete dahil eder--compression-level <seviye>: Sıkıştırma seviyesi (1-9, 9 en yüksek sıkıştırma)
Bir projeyi analiz etme
nodejs-bundler analyze /proje/yoluAPI
const { bundleProject, analyzeProject } = require('nodejs-bundler');
// Bir projeyi sıkıştırma
bundleProject({
entryPoint: '/proje/yolu/index.js',
outputFile: 'paket.bls',
minify: true,
includeNodeModules: false,
compressionLevel: 9
}).then(outputPath => {
console.log(`Paket oluşturuldu: ${outputPath}`);
});
// Bir projeyi analiz etme
analyzeProject('/proje/yolu').then(info => {
console.log(`Giriş noktası: ${info.entryPoint}`);
console.log(`Dosya sayısı: ${info.files.length}`);
console.log('Bağımlılıklar:', info.dependencies);
});Nasıl Çalışır
nodejs-bundler, Node.js uygulamanızı tek bir dosyaya sıkıştırmak için çeşitli teknolojiler kullanır:
- Webpack ile tüm proje dosyalarını tek bir JavaScript dosyasında birleştirir
- Terser ile kodu minify eder
- Brotli ve Gzip sıkıştırma algoritmalarını birlikte kullanarak ultra sıkıştırma sağlar
- Kendiliğinden açılan (self-extracting) bir yapı oluşturur
- Hem CommonJS hem de ES modüllerini destekler
BLS Formatı
.bls (Bundled, Lightweight Script) formatı aşağıdaki özelliklere sahiptir:
- Kendiliğinden açılan bir yapıdadır, doğrudan
node dosya.blsile çalıştırılabilir - Çift katmanlı sıkıştırma kullanır (Brotli + Gzip)
- 1GB'lık bir projeyi MB seviyesine kadar sıkıştırabilir
- Orijinal kodun tüm işlevselliğini korur
Sıkıştırma Oranları
Sıkıştırma seviyesi ayarlanabilir (1-9):
- Seviye 1: Hızlı sıkıştırma, orta düzeyde boyut küçültme
- Seviye 5: Dengeli sıkıştırma
- Seviye 9: En yüksek sıkıştırma oranı (varsayılan)
Tipik sıkıştırma oranları:
- Küçük projeler: %70-80 küçültme
- Orta boy projeler: %80-90 küçültme
- Büyük projeler: %90-95+ küçültme
Lisans
MIT
