impsortjs
v0.0.2
Published
Otomatis mengurutkan impor (import & require) dalam file JavaScript dan TypeScript berdasarkan kategori: core, third-party, dan lokal.
Readme
impsortjs
impsortjs adalah alat CLI yang secara otomatis mengurutkan pernyataan import (ESM) dan require (CommonJS) dalam file JavaScript dan TypeScript. Alat ini membantu menjaga konsistensi kode dengan mengurutkan impor berdasarkan kategori:
- Core Modules → Modul bawaan Node.js (misal:
fs,path). - Third-Party Modules → Modul dari
node_modules(misal:express,chalk). - Local Modules → File lokal (
./atau../).
Fitur
- Mendukung ESM (
import) dan CommonJS (require). - Bekerja untuk file
.js,.cjs,.mjs,.jsx,.ts, dan.tsx. - Memproses semua file dalam direktori kerja secara rekursif.
- Secara otomatis memperbarui file jika urutan impor tidak sesuai.
Instalasi
npm install -g impsortjsPenggunaan
Jalankan perintah berikut di direktori proyek Anda:
impsortAlat ini akan secara otomatis menemukan dan mengurutkan semua file yang cocok.
Catatan: Alat ini memerlukan alat lain untuk memformat kode sebelum dan sesudah menggunakan impsortjs agar kode tetap rapi.
Misalnya menggunakan prettier:
prettier -w . && impsort && prettier -w .Contoh Sebelum & Sesudah
ESM
Sebelum: (berantakan)
import fs from 'fs';
import express from 'express';
import path from 'path';
import chalk from 'chalk';
import utils from './utils.js';
import myModule from './myModule.js';Sesudah: (lebih rapi)
import fs from 'fs';
import path from 'path';
import chalk from 'chalk';
import express from 'express';
import myModule from './myModule.js';
import utils from './utils.js';CommonJS
Sebelum: (berantakan)
const fs = require('fs');
const express = require('express');
const path = require('path');
const chalk = require('chalk');
const utils = require('./utils.js');
const myModule = require('./myModule.js');Sesudah: (lebih rapi)
const fs = require('fs');
const path = require('path');
const chalk = require('chalk');
const express = require('express');
const myModule = require('./myModule.js');
const utils = require('./utils.js');Bagaimana Cara Kerjanya?
- Baca
package.jsonuntuk mengetahui dependensi yang digunakan dalam proyek. - Menganalisis setiap baris kode untuk mendeteksi
importdanrequire. - Mengategorikan impor berdasarkan:
- Core Modules: Modul bawaan Node.js.
- Third-Party Modules: Modul dari
node_modules. - Local Modules: File yang dimulai dengan
./atau../.
- Mengurutkan masing-masing kategori secara alfabetis.
- Menimpa file asli jika ada perubahan.
Konfigurasi
Secara default, alat ini mengabaikan direktori node_modules dan dist.
