npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@emaenriquez/projectmanager-cli

v0.1.2

Published

A CLI/TUI application for managing development projects across multiple technologies

Downloads

403

Readme

Centro de Proyectos

Una aplicación CLI/TUI para gestionar proyectos de desarrollo en múltiples tecnologías.

🔗 Repositorio: github.com/emaenriquez/projectmanager-cli

Características

  • Análisis de proyectos: Detecta automáticamente proyectos escaneando directorios en busca de archivos de configuración (package.json, Cargo.toml, go.mod, etc.)
  • Detección de tecnología: Identifica los lenguajes, marcos de trabajo y herramientas utilizados en cada proyecto
  • Interfaz TUI: Interfaz de terminal interactiva con lista de proyectos, panel de detalles y atajos de teclado
  • Comandos CLI: Interfaz completa de línea de comandos para scripting y automatización
  • Integración con Git: Muestra la rama, los cambios no confirmados y las confirmaciones no enviadas
  • Etiquetas y Favoritos: Organiza proyectos con etiquetas personalizadas y márcalos como favoritos
  • Búsqueda y Filtros: Encuentra proyectos rápidamente por nombre, tecnología o etiqueta
  • Diagnósticos del sistema: Comando doctor para verificar las herramientas instaladas y el estado de la base de datos

Inicio Rápido

# Instalar el paquete globalmente
npm install -g @emaenriquez/projectmanager-cli

# Ejecutar en modo TUI (interactivo)
projectmanager-cli

# Escanear un directorio en busca de proyectos
projectmanager-cli scan C:\ruta\a\proyectos

# Agregar un proyecto manualmente
projectmanager-cli add C:\ruta\al\proyecto

# Verificar herramientas instaladas
projectmanager-cli doctor

Comandos CLI

| Comando | Descripción | | ---------------------------------- | --------------------------------------------------------------------------- | | scan [ruta] | Escanea un directorio en busca de proyectos | | add <ruta> | Agrega un proyecto por ruta | | remove <id> | Elimina un proyecto | | open <id> [--with <herramienta>] | Abre un proyecto en un editor | | doctor | Ejecuta diagnósticos del sistema | | sync | Sincroniza todos los proyectos (elimina los faltantes, actualiza metadatos) | | config list | Muestra todas las configuraciones | | config get <clave> | Obtiene un valor de configuración | | config set <clave> <valor> | Establece un valor de configuración | | config reset | Restablece la configuración a los valores predeterminados |

Atajos de Teclado (TUI)

| Tecla | Acción | | ------------- | --------------------------------- | | ↑/↓ | Navegar por la lista de proyectos | | Enter / D | Ver detalles del proyecto | | A | Agregar un proyecto por ruta | | S | Escanear un directorio | | F | Buscar/filtrar proyectos | | * | Marcar/desmarcar favorito | | T | Agregar etiqueta al proyecto | | O | Abrir proyecto en el editor | | X | Eliminar proyecto | | R | Actualizar lista | | Q / Esc | Salir |

Arquitectura

El proyecto sigue los principios de Arquitectura Limpia (Clean Architecture):

src/
├── domain/           # Entidades de negocio, servicios (ProjectScanner, TechnologyDetector, GitService)
├── application/      # Casos de uso (ScanProjects, AddProject, etc.), gestión de estado, manejo de errores
├── infrastructure/   # Base de datos (SQLite), repositorios, marco de UI (Blessed)
└── ui/               # CLI (Commander.js), componentes TUI, vistas

Tecnologías Utilizadas

  • Runtime: Node.js + TypeScript
  • Base de datos: SQLite mediante better-sqlite3
  • Marco CLI: Commander.js
  • Marco TUI: Blessed
  • Testing: Jest

Desarrollo

# Ejecutar pruebas
npm test

# Compilar
npm run build

# Correr
npm run dev

Licencia

MIT