@icarusmx/creta 1.4.18 → 1.5.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.
package/README.md ADDED
@@ -0,0 +1,395 @@
1
+ # 🏛️ Creta CLI
2
+
3
+ **Creta** es el compañero CLI que evoluciona contigo - desde tus primeros comandos hasta tu carrera profesional.
4
+
5
+ > "Salgamos de este laberinto" 🏛️
6
+
7
+ ## 🌱 Un CLI que crece con el desarrollador
8
+
9
+ Creta no es una herramienta que "terminas" y dejas atrás. Se adapta a tu nivel:
10
+
11
+ ```
12
+ 🎓 Aprendiz → 💻 Desarrollador → 🏗️ Constructor
13
+ Learn interactively Quick references Professional workflow
14
+ creta sintaxis creta ls creta requirement
15
+ ```
16
+
17
+ **Versión actual:** 1.4.16 (Phase 1 - Aprendiz)
18
+ **Próxima:** 1.5.0 (Phase 2 - Desarrollador)
19
+
20
+ ---
21
+
22
+ ## Instalación
23
+
24
+ ```bash
25
+ # Instalación global (recomendado)
26
+ npm install -g @icarusmx/creta
27
+
28
+ # Uso directo con npx (sin instalar)
29
+ npx @icarusmx/creta
30
+ ```
31
+
32
+ ---
33
+
34
+ ## 🎓 Phase 1: Aprendiz (LIVE)
35
+
36
+ **Para estudiantes aprendiendo desde cero**
37
+
38
+ ### El Flujo de Aprendizaje
39
+
40
+ Creta es parte de un ecosistema educativo que combina **Discord**, **CLI** y **videos**:
41
+
42
+ ```
43
+ Discord Server
44
+ ↓ Aprende tus primeros comandos
45
+ ↓ Instala Node.js
46
+
47
+ npx @icarusmx/creta
48
+ ↓ Practica comandos interactivos
49
+ ↓ Completa lecciones
50
+ ↓ Obtén un hash especial
51
+
52
+ Discord: /redeem <hash>
53
+ ↓ Recibe link de YouTube oculto
54
+
55
+ Videos educativos
56
+ ↓ Aprende conceptos
57
+ ↓ Regresa al CLI para practicar
58
+
59
+ 🔁 Ciclo continuo de aprendizaje
60
+ ```
61
+
62
+ ### Comandos de Aprendizaje
63
+
64
+ ```bash
65
+ # Menú principal (empieza aquí)
66
+ creta
67
+
68
+ # Lecciones de sintaxis con práctica interactiva
69
+ creta sintaxis
70
+
71
+ # Explorar los 7 enunciados fundamentales (OOP)
72
+ creta enunciados
73
+
74
+ # Ver proyectos disponibles
75
+ creta proyectos
76
+ ```
77
+
78
+ ### 💻 Sistema de Práctica Interactiva
79
+
80
+ **Ejecuta comandos reales en sandboxes aislados:**
81
+
82
+ ```bash
83
+ creta sintaxis
84
+ # → Selecciona "Primeros comandos"
85
+ # → Ejecuta ls, mkdir, cd en entorno seguro
86
+ # → Validación estricta de sintaxis
87
+ # → Los cambios persisten entre pasos
88
+ ```
89
+
90
+ **Características:**
91
+ - 🔒 **Seguro:** Todo ocurre en `/tmp/`, nunca toca tus archivos reales
92
+ - ✅ **Validación estricta:** Aprende la sintaxis exacta, sin atajos
93
+ - 🔁 **Estado persistente:** Los cambios se mantienen entre pasos
94
+ - 🧹 **Auto-limpieza:** Sandboxes se limpian automáticamente
95
+
96
+ ### 📚 Curriculum Completo
97
+
98
+ **4 Lecciones de Sintaxis (con práctica interactiva):**
99
+ 1. **Primeros comandos** - `ls`, `mkdir`, `cd` en sandbox real
100
+ 2. **Git** - Control de versiones con definiciones rigurosas
101
+ 3. **Combina comandos** - Standard streams (stdin/stdout/stderr) + piping
102
+ 4. **Escribe scripts** - Automatización desde `echo` hasta scripts de deployment
103
+
104
+ **7 Enunciados Fundamentales (Conceptos OOP):**
105
+ 1. Sistema - Descomposición de bibliotecas digitales
106
+ 2. Solicitudes - Chat system object requests
107
+ 3. Única forma - Cajas fuertes digitales
108
+ 4. Firmas - Calculadora financiera
109
+ 5. Conjunto - Music player interfaces
110
+ 6. Énfasis - Banking system design
111
+ 7. Objeto - Datos + procedimientos que operan sobre datos
112
+
113
+ ### 🚀 Generación de Portafolios
114
+
115
+ ```bash
116
+ # Crear portafolio personal (reto completo con instrucciones)
117
+ creta portafolio
118
+
119
+ # Nivel 1: Navbar completado
120
+ creta portafolio-1
121
+
122
+ # Nivel 2: Navbar + Hero completados
123
+ creta portafolio-2
124
+
125
+ # Nivel 3: Solución completa
126
+ creta portafolio-3
127
+ ```
128
+
129
+ **Stack del portafolio:** SvelteKit 5 + Tailwind CSS 4
130
+
131
+ ---
132
+
133
+ ## 💻 Phase 2: Desarrollador (COMING SOON - v1.5.0)
134
+
135
+ **Para junior devs que necesitan referencias rápidas**
136
+
137
+ ### Reemplaza `man` con ayuda en español
138
+
139
+ ```bash
140
+ # En lugar de: man ls
141
+ creta ls
142
+ # → Quick reference en español
143
+ # → Solo lo esencial (no 500 líneas)
144
+ # → Ejemplos prácticos reales
145
+ # → Link a lecciones relacionadas
146
+
147
+ # Funciona con cualquier comando
148
+ creta git status
149
+ creta mkdir
150
+ creta wc
151
+ creta grep
152
+ ```
153
+
154
+ ### Por qué mejor que `man`:
155
+
156
+ - 🇪🇸 **Documentación nativa en español** - Sin traducción mental
157
+ - 🎯 **Solo lo esencial** - No más walls of text de 500 líneas
158
+ - 💡 **Ejemplos prácticos** - Casos reales de tu contexto de estudiante
159
+ - 🔗 **Conectado a tu aprendizaje** - Links a lecciones si necesitas profundizar
160
+ - 🚀 **Sin context-switching** - No Google, no browser, solo terminal
161
+
162
+ **Status:** 🚧 En desarrollo - Ships en v1.5.0
163
+
164
+ ---
165
+
166
+ ## 🏗️ Phase 3: Constructor (VISION - v2.0.0+)
167
+
168
+ **Para profesionales trabajando en proyectos de Icarus**
169
+
170
+ ### Asistente personalizado de workflow
171
+
172
+ ```bash
173
+ # Autenticación (desbloquea features personalizados)
174
+ creta login
175
+
176
+ # Ver tu ticket actual (Jira-like en terminal)
177
+ creta requirement
178
+ # →
179
+ # 📋 Current Ticket: CRETA-142
180
+ # 🏷️ Add dark mode toggle to dashboard
181
+ # 👤 Assigned to: Guillermo
182
+ # ⏱️ Due: 2 days
183
+ # 📝 Description: Implement dark mode...
184
+ # 💡 Related docs: creta tailwind, creta svelte
185
+
186
+ # Revisar progreso y asignaciones
187
+ creta status
188
+
189
+ # Enviar trabajo completado
190
+ creta submit
191
+ ```
192
+
193
+ **Features:**
194
+ - 🔐 Authentication con cuenta de Icarus
195
+ - 📋 Ticket management (agile workflow)
196
+ - 👥 Team workspace sync
197
+ - 📊 Progress tracking personalizado
198
+
199
+ **Status:** 🔮 Vision - Requiere infraestructura de autenticación
200
+
201
+ ---
202
+
203
+ ## 🛠️ Utilidades Actuales
204
+
205
+ ```bash
206
+ # Sesión interactiva de programación con Claude
207
+ creta code
208
+
209
+ # Personalizar terminal con tema de Icarus
210
+ creta icarus-terminal
211
+
212
+ # Revertir personalización de terminal
213
+ creta revert-terminal
214
+
215
+ # Mostrar ayuda
216
+ creta help
217
+ creta ayuda
218
+
219
+ # Reiniciar estado de usuario (nombre, progreso, estadísticas)
220
+ creta reset
221
+ ```
222
+
223
+ ---
224
+
225
+ ## 💾 Datos Locales
226
+
227
+ Creta almacena estos datos en tu sistema:
228
+
229
+ | Ubicación | Contenido | Limpieza |
230
+ |-----------|-----------|----------|
231
+ | `~/.creta/user.json` | Nombre, lecciones completadas, proyectos, estadísticas | `creta reset` |
232
+ | `/tmp/creta-practice-*` | Sesiones de práctica interactiva (sandboxes temporales) | Auto-limpieza al iniciar CLI |
233
+ | `{nombre}-portafolio/` | Proyectos generados por ti | Manual (son tus proyectos) |
234
+
235
+ **Nota:** Los sandboxes de práctica se limpian automáticamente cada vez que ejecutas Creta.
236
+
237
+ ---
238
+
239
+ ## 🎯 Filosofía Creta
240
+
241
+ > **"Partir de enunciados que generan 'ruido' para construir comprensión real, no solo sintaxis."**
242
+
243
+ ### Principios
244
+
245
+ **Evolution Over Replacement:**
246
+ - No abandonamos features a medida que creces
247
+ - Agregamos capas de funcionalidad
248
+ - Misma herramienta, diferentes modos
249
+ - Progresión sin fisuras
250
+
251
+ **Always Relevant:**
252
+ - Estudiantes la usan para aprender
253
+ - Juniors la usan para referencias
254
+ - Profesionales la usan para workflow
255
+ - Nunca te quedas sin tu compañero
256
+
257
+ **Spanish-First:**
258
+ - Aprendizaje en tu idioma nativo
259
+ - Sin barrera de traducción
260
+ - Contexto cultural importa
261
+ - Comunidad LATAM de desarrolladores
262
+
263
+ **CLI-Native:**
264
+ - Rápido, keyboard-driven
265
+ - Sin cambio de contexto
266
+ - La terminal es tu hogar
267
+ - Funciona donde los devs trabajan
268
+
269
+ ### Valores
270
+
271
+ - 🎯 **Aprender construyendo** - Learn by doing
272
+ - 🧠 **Conceptos antes que sintaxis** - Fundamentos sólidos
273
+ - 💪 **Progresión por niveles** - Salta adelante o obtén soluciones
274
+ - 🔁 **Aprendizaje cíclico** - Discord → CLI → Videos → Repite
275
+ - 🎮 **Gamificación** - Hashes, recompensas, desbloqueos
276
+ - 🇪🇸 **Todo en español** - Educación accesible en tu idioma
277
+
278
+ ---
279
+
280
+ ## 🔧 Desarrollo
281
+
282
+ ### Estructura del Proyecto
283
+
284
+ ```
285
+ cli/
286
+ ├── bin/creta.js # Punto de entrada
287
+ ├── lib/
288
+ │ ├── cli/index.js # Lógica principal del CLI
289
+ │ ├── builders/ # MenuBuilder, LessonBuilder
290
+ │ ├── data/ # Lecciones, menús, mensajes
291
+ │ ├── executors/ # Ejecutores de sintaxis, enunciados, proyectos
292
+ │ ├── sandbox/ # Sistema de práctica interactiva
293
+ │ │ ├── SandboxManager.js
294
+ │ │ ├── CommandValidator.js
295
+ │ │ └── CommandExecutor.js
296
+ │ └── utils/ # User state, greeting, etc.
297
+ └── templates/
298
+ └── sveltekit-portfolio/ # Template de portafolio
299
+ ```
300
+
301
+ ### Comandos de Desarrollo
302
+
303
+ ```bash
304
+ # Probar CLI localmente
305
+ node bin/creta.js
306
+
307
+ # Probar comando específico
308
+ node bin/creta.js sintaxis
309
+ node bin/creta.js portafolio
310
+
311
+ # Publicar a npm (incrementar versión primero)
312
+ npm publish
313
+
314
+ # O usar el script de deployment
315
+ ./deploy-patch.sh
316
+ ```
317
+
318
+ ### Tecnologías
319
+
320
+ - **Runtime:** Node.js (ES modules, no TypeScript)
321
+ - **CLI Framework:** Vanilla Node.js con readline
322
+ - **Template Engine:** SvelteKit 5 + Tailwind CSS 4
323
+ - **Package Manager:** npm
324
+ - **Publicado como:** `@icarusmx/creta` (acceso público)
325
+
326
+ ---
327
+
328
+ ## 🗺️ Roadmap
329
+
330
+ ### ✅ Ahora: Phase 1 Complete (v1.4.16)
331
+ - Core curriculum (7 enunciados + 4 sintaxis)
332
+ - Interactive practice system
333
+ - Portfolio generation
334
+ - User state tracking
335
+
336
+ ### 🚀 Próximo: Phase 2 Launch (v1.5.0)
337
+ - Command reference system (`creta ls`)
338
+ - Reemplazar `man` para estudiantes
339
+ - Polish existing content
340
+ - Neovim curriculum
341
+
342
+ ### 📈 3-6 meses: Phase 2 Expansion
343
+ - Advanced command references
344
+ - Hash/YouTube loop completado
345
+ - Scythe integration (tokens)
346
+ - 500+ monthly active users
347
+
348
+ ### 🏗️ 6-12 meses: Phase 3 Vision
349
+ - Authentication system
350
+ - Requirement management (`creta requirement`)
351
+ - Team workspace features
352
+ - Constructor tools live
353
+
354
+ Ver **[ROADMAP.md](./ROADMAP.md)** para detalles completos.
355
+
356
+ ---
357
+
358
+ ## 📊 Métricas de Éxito
359
+
360
+ **Phase 1 (Aprendiz):**
361
+ - Monthly active learners
362
+ - Lessons completed per user
363
+ - Hash redemption rate
364
+
365
+ **Phase 2 (Desarrollador):**
366
+ - `creta [command]` usage vs `man [command]`
367
+ - Command reference engagement
368
+ - Time saved vs Google/man
369
+
370
+ **Phase 3 (Constructor):**
371
+ - Authenticated users
372
+ - Daily active professionals
373
+ - Tickets managed through Creta
374
+
375
+ ---
376
+
377
+ ## 🤝 Contribuir
378
+
379
+ Este proyecto es parte de [Icarus](https://icarus.mx), una escuela de software enfocada en formar desarrolladores mediante la construcción de proyectos reales.
380
+
381
+ **Queremos contribuciones que:**
382
+ - Agreguen nuevas lecciones de sintaxis
383
+ - Mejoren la experiencia de aprendizaje
384
+ - Expandan el sistema de ayuda de comandos
385
+ - Compartan feedback de estudiantes
386
+
387
+ ---
388
+
389
+ ## 📄 Licencia
390
+
391
+ ISC
392
+
393
+ ---
394
+
395
+ 🏛️ **Hecho con <3 por [icarus.mx](https://icarus.mx)** - Salgamos de este laberinto