besmin
v0.0.6
Published
Build ECMAScript Minify
Readme
Instalasi
npm install --global besminPenggunaan
Sintaks CLI
besmin <inputDir> <outputDir> [cjs|umd|amd|sysjs] (or default [esm]) [--watch] [--fix]Argumen
<inputDir>: Direktori input yang berisi file.jsdan.ts.<outputDir>: Direktori output untuk file hasil build.[cjs|umd|amd|sysjs] (or default [esm]): Format modul yang akan dibangun. Bisa memilih satu atau lebih format.[--watch]: Mengaktifkan mode pemantauan perubahan file.[--fix]: Hanya melakukan pengecekan sintaks tanpa membangun file.
Contoh Penggunaan
- Membangun file JavaScript/TypeScript ke format CommonJS (CJS):
besmin src dist cjs - Membangun ke beberapa format modul:
besmin src dist cjs esm umd - Membangun dan mengaktifkan mode pemantauan:
besmin src dist cjs esm --watch - Membangun dengan format default ECMAScript Modules (ESM):
besmin src dist - Mengecek kesalahan sintaks tanpa membangun file:
besmin src --fix - Mengecek sintaks secara otomatis saat ada perubahan file:
besmin src --fix --watch
Cara Kerja
besmin membaca file .js dan .ts, melakukan transformasi menggunakan Babel, dan meminifikasi hasilnya dengan Terser.
File hasil build disimpan di direktori output secara rekursif sesuai format modul yang dipilih.
- Jika mode
--watchdiaktifkan,besminakan memantau perubahan di direktori input dan secara otomatis memvalidasi serta membangun ulang file yang terpengaruh. - Jika
--fixdigunakan,besminhanya akan memeriksa kesalahan sintaksis tanpa menghasilkan file output. Jika dikombinasikan dengan--watch,besminakan terus memantau perubahan dan menjalankan validasi setiap ada perubahan.
Dependencies
- fs-extra: Operasi file yang diperluas.
- @babel/core: Alat transformasi kode modern.
- @babel/preset-env: Preset untuk mendukung target lingkungan tertentu.
- @babel/preset-typescript: Preset untuk mendukung TypeScript.
- @babel/plugin-transform-modules-commonjs: Plugin untuk mendukung CommonJS.
- @babel/plugin-transform-modules-umd: Plugin untuk mendukung UMD.
- @babel/plugin-transform-modules-amd: Plugin untuk mendukung AMD.
- @babel/plugin-transform-modules-systemjs: Plugin untuk mendukung SystemJS.
- terser: Minifikasi kode JavaScript.
- chokidar: Pemantauan file dan direktori.
