@emaenriquez/projectmanager-cli 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +74 -69
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,98 +1,103 @@
1
- # Project Hub
1
+ # Centro de Proyectos
2
2
 
3
- A CLI/TUI application for managing development projects across multiple technologies.
3
+ Una aplicación CLI/TUI para gestionar proyectos de desarrollo en múltiples tecnologías.
4
4
 
5
- ## Features
5
+ 🔗 **Repositorio**: [github.com/emaenriquez/projectmanager-cli](https://github.com/emaenriquez/projectmanager-cli)
6
6
 
7
- - **Project Scanning**: Automatically detect projects by scanning directories for config files (package.json, Cargo.toml, go.mod, etc.)
8
- - **Technology Detection**: Identifies languages, frameworks, and tools used in each project
9
- - **TUI Interface**: Interactive terminal UI with project list, details panel, and keyboard shortcuts
10
- - **CLI Commands**: Full command-line interface for scripting and automation
11
- - **Git Integration**: Shows branch, uncommitted changes, and unpushed commits
12
- - **Tags & Favorites**: Organize projects with custom tags and mark favorites
13
- - **Search & Filter**: Find projects quickly by name, technology, or tag
14
- - **System Diagnostics**: `doctor` command to verify installed tools and database health
7
+ ## Características
15
8
 
16
- ## Quick Start
9
+ - **Análisis de proyectos**: Detecta automáticamente proyectos escaneando directorios en busca de archivos de configuración (package.json, Cargo.toml, go.mod, etc.)
10
+ - **Detección de tecnología**: Identifica los lenguajes, marcos de trabajo y herramientas utilizados en cada proyecto
11
+ - **Interfaz TUI**: Interfaz de terminal interactiva con lista de proyectos, panel de detalles y atajos de teclado
12
+ - **Comandos CLI**: Interfaz completa de línea de comandos para scripting y automatización
13
+ - **Integración con Git**: Muestra la rama, los cambios no confirmados y las confirmaciones no enviadas
14
+ - **Etiquetas y Favoritos**: Organiza proyectos con etiquetas personalizadas y márcalos como favoritos
15
+ - **Búsqueda y Filtros**: Encuentra proyectos rápidamente por nombre, tecnología o etiqueta
16
+ - **Diagnósticos del sistema**: Comando `doctor` para verificar las herramientas instaladas y el estado de la base de datos
17
+
18
+ ## Inicio Rápido
17
19
 
18
20
  ```bash
19
- # Install dependencies
20
- npm install
21
+ # Instalar el paquete globalmente
22
+ npm install -g @emaenriquez/projectmanager-cli
21
23
 
22
- # Run in TUI mode (interactive)
23
- npm run dev
24
+ # Ejecutar en modo TUI (interactivo)
25
+ projectmanager
26
+
27
+ # Escanear un directorio en busca de proyectos
28
+ projectmanager scan C:\ruta\a\proyectos
24
29
 
25
- # Run CLI commands
26
- npm run dev -- scan C:\path\to\projects
27
- npm run dev -- add C:\path\to\project
28
- npm run dev -- doctor
29
- npm run dev -- --help
30
+ # Agregar un proyecto manualmente
31
+ projectmanager add C:\ruta\al\proyecto
32
+
33
+ # Verificar herramientas instaladas
34
+ projectmanager doctor
30
35
  ```
31
36
 
32
- ## CLI Commands
33
-
34
- | Command | Description |
35
- |---------|-------------|
36
- | `scan [path]` | Scan a directory for projects |
37
- | `add <path>` | Add a single project by path |
38
- | `remove <id>` | Remove a project |
39
- | `open <id> [--with <tool>]` | Open a project in an editor |
40
- | `doctor` | Run system diagnostics |
41
- | `sync` | Sync all projects (remove missing, update metadata) |
42
- | `config list` | Show all configurations |
43
- | `config get <key>` | Get a config value |
44
- | `config set <key> <value>` | Set a config value |
45
- | `config reset` | Reset config to defaults |
46
-
47
- ## TUI Keyboard Shortcuts
48
-
49
- | Key | Action |
50
- |-----|--------|
51
- | `↑/↓` | Navigate project list |
52
- | `Enter` / `D` | View project details |
53
- | `A` | Add a project by path |
54
- | `S` | Scan a directory |
55
- | `F` | Search/filter projects |
56
- | `*` | Toggle favorite |
57
- | `T` | Add tag to project |
58
- | `O` | Open project in editor |
59
- | `X` | Delete project |
60
- | `R` | Refresh list |
61
- | `Q` / `Esc` | Quit |
62
-
63
- ## Architecture
64
-
65
- The project follows **Clean Architecture** principles:
37
+ ## Comandos CLI
38
+
39
+ | Comando | Descripción |
40
+ | ---------------------------------- | --------------------------------------------------------------------------- |
41
+ | `scan [ruta]` | Escanea un directorio en busca de proyectos |
42
+ | `add <ruta>` | Agrega un proyecto por ruta |
43
+ | `remove <id>` | Elimina un proyecto |
44
+ | `open <id> [--with <herramienta>]` | Abre un proyecto en un editor |
45
+ | `doctor` | Ejecuta diagnósticos del sistema |
46
+ | `sync` | Sincroniza todos los proyectos (elimina los faltantes, actualiza metadatos) |
47
+ | `config list` | Muestra todas las configuraciones |
48
+ | `config get <clave>` | Obtiene un valor de configuración |
49
+ | `config set <clave> <valor>` | Establece un valor de configuración |
50
+ | `config reset` | Restablece la configuración a los valores predeterminados |
51
+
52
+ ## Atajos de Teclado (TUI)
53
+
54
+ | Tecla | Acción |
55
+ | ------------- | --------------------------------- |
56
+ | `↑/↓` | Navegar por la lista de proyectos |
57
+ | `Enter` / `D` | Ver detalles del proyecto |
58
+ | `A` | Agregar un proyecto por ruta |
59
+ | `S` | Escanear un directorio |
60
+ | `F` | Buscar/filtrar proyectos |
61
+ | `*` | Marcar/desmarcar favorito |
62
+ | `T` | Agregar etiqueta al proyecto |
63
+ | `O` | Abrir proyecto en el editor |
64
+ | `X` | Eliminar proyecto |
65
+ | `R` | Actualizar lista |
66
+ | `Q` / `Esc` | Salir |
67
+
68
+ ## Arquitectura
69
+
70
+ El proyecto sigue los principios de **Arquitectura Limpia (Clean Architecture)**:
66
71
 
67
72
  ```
68
73
  src/
69
- ├── domain/ # Business entities, services (ProjectScanner, TechnologyDetector, GitService)
70
- ├── application/ # Use cases (ScanProjects, AddProject, etc.), state management, error handling
71
- ├── infrastructure/ # Database (SQLite), repositories, UI framework (Blessed)
72
- └── ui/ # CLI (Commander.js), TUI components, views
74
+ ├── domain/ # Entidades de negocio, servicios (ProjectScanner, TechnologyDetector, GitService)
75
+ ├── application/ # Casos de uso (ScanProjects, AddProject, etc.), gestión de estado, manejo de errores
76
+ ├── infrastructure/ # Base de datos (SQLite), repositorios, marco de UI (Blessed)
77
+ └── ui/ # CLI (Commander.js), componentes TUI, vistas
73
78
  ```
74
79
 
75
- ## Tech Stack
80
+ ## Tecnologías Utilizadas
76
81
 
77
82
  - **Runtime**: Node.js + TypeScript
78
- - **Database**: SQLite via better-sqlite3
79
- - **CLI Framework**: Commander.js
80
- - **TUI Framework**: Blessed
83
+ - **Base de datos**: SQLite mediante better-sqlite3
84
+ - **Marco CLI**: Commander.js
85
+ - **Marco TUI**: Blessed
81
86
  - **Testing**: Jest
82
87
 
83
- ## Development
88
+ ## Desarrollo
84
89
 
85
90
  ```bash
86
- # Run tests
91
+ # Ejecutar pruebas
87
92
  npm test
88
93
 
89
- # Build
94
+ # Compilar
90
95
  npm run build
91
96
 
92
- # Lint
93
- npm run lint
97
+ # Correr
98
+ npm run dev
94
99
  ```
95
100
 
96
- ## License
101
+ ## Licencia
97
102
 
98
103
  MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emaenriquez/projectmanager-cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A CLI/TUI application for managing development projects across multiple technologies",
5
5
  "main": "dist/index.js",
6
6
  "type": "commonjs",