@hernando15/count-lines-cli
v1.1.0
Published
CLI tool to count lines of code and show top files, respecting .gitignore
Maintainers
Readme
Count Lines CLI
CLI tool para contar líneas de código en tu proyecto y mostrar el top de archivos con más líneas, respetando las reglas del .gitignore.
Características
- Cuenta líneas de código en todos los archivos del proyecto
- Respeta las reglas del
.gitignoreautomáticamente - Ignora automáticamente archivos comunes (lock files, configs, builds)
- Soporte para archivo
.countlinesignorecon reglas personalizadas - Muestra un ranking de archivos ordenados por número de líneas
- Estadísticas totales del proyecto
Instalación
Instalación local en un proyecto
npm installInstalación global (para usar en cualquier proyecto)
npm install -g .Uso
Si está instalado localmente
npm starto directamente:
node cli.jsSi está instalado globalmente
count-linesEspecificar cuántos archivos mostrar
Por defecto muestra el top 20, pero puedes especificar otro número:
node cli.js 10 # Muestra top 10
node cli.js 50 # Muestra top 50Ejemplo de salida
🔍 Contando líneas de código...
✓ Patrones por defecto cargados (lock files, configs, etc.)
✓ .gitignore cargado
✓ .countlinesignore cargado
📊 Top 6 archivos con más líneas:
────────────────────────────────────────────────────────────────────────────────
Líneas Archivo
────────────────────────────────────────────────────────────────────────────────
1. 117 cli.js
2. 29 package-lock.json
3. 26 package.json
4. 21 test-file-2.js
5. 11 test-file-1.js
6. 8 .gitignore
────────────────────────────────────────────────────────────────────────────────
📈 Resumen:
Total de archivos: 6
Total de líneas: 212
Promedio de líneas por archivo: 35Archivos que se ignoran
El CLI tiene 3 niveles de ignorado que se combinan:
1. Patrones ignorados por defecto
Estos archivos siempre se ignoran automáticamente:
node_modules/,.git/- Lock files:
package-lock.json,pnpm-lock.yaml,yarn.lock,bun.lockb - Configs comunes:
*.config.js,*.config.ts,tsconfig.json,jsconfig.json - Build outputs:
dist/,build/,.next/,.nuxt/,out/ - Otros:
.DS_Store,Thumbs.db
2. Archivo .gitignore
Si existe un .gitignore en tu proyecto, todas sus reglas se respetan automáticamente.
3. Archivo .countlinesignore (opcional)
Puedes crear un archivo .countlinesignore en la raíz de tu proyecto para agregar reglas adicionales específicas para el contador de líneas.
Ejemplo de .countlinesignore:
# Ignorar archivos de prueba
*.test.js
*.spec.ts
# Ignorar tipos de archivos
*.json
*.yaml
*.yml
# Ignorar directorios
docs/
examples/
# Ignorar archivos específicos
README.mdEste archivo es completamente opcional y complementa (no reemplaza) el .gitignore.
Publicar en npm
Para publicar este paquete en npm:
npm login
npm publishLicencia
MIT
