smiledev v1.1
Alpha! 1.1A
LoopModules Registry
smiledev Package Manager
Gestor oficial de paquetes, módulos y dependencias políglotas para Looping y Loop OS. Soporta módulos en .loop, Python/PyLoop (.py), C++17 (.hpp), C2 declarativo (.c2) y paquetes híbridos multi-archivo.
Instalación y Canales
Instala los canales oficiales (Looping Producción, Omega Looping RC o Alpha! 1.1A experimental) vía Homebrew o script directo:
# 1. Homebrew (macOS)
brew tap cokistudios/tap
brew install looping smiledev
brew install cokistudios/tap/smiledev-alpha # Canal Alpha! 1.1A
# 2. Script directo (macOS / Linux)
curl -fsSL https://repo.cokistudios.com/engine/install.sh | bash
curl -fsSL https://repo.cokistudios.com/engine/install.sh | bash -s -- --alpha
# 3. Diagnóstico de entorno y compiladores
smiledev doctor
Arquitectura de Resolución de Módulos
Cuando ejecutas use "nombre" o import "nombre", el motor resuelve las dependencias siguiendo esta jerarquía:
- Stdlib interna C++17 (
math,crypto,sys,csv,datetime,regex,ui,swiftui,json,file,csharp). - Ruta relativa directa en el directorio de trabajo (
./modulo,./modulo.loop). - Manifiesto local
./modules/<nombre>/smile.jsonusando su campoentry_point. - Fallback local:
./modules/<nombre>/<nombre>.loopomain.loop, y./loop_modules/<nombre>.loop. - Caché global en
~/.smiledev/modules/<nombre>/. - Python Bridge fallback:
<nombre>.py/main.py.
Referencia de Comandos CLI
| Comando | Descripción | Ejemplo |
|---|---|---|
smiledev install [mod] |
Instala un paquete o todas las dependencias de smile.json. |
smiledev install loopize++ |
smiledev uninstall <mod> |
Elimina un módulo local o global (--global). |
smiledev uninstall loop-gui-tk |
smiledev search <q> |
Busca paquetes en LoopModules Registry. | smiledev search 3d |
smiledev init <name> |
Genera plantilla con smile.json, código base y README. |
smiledev init mi-plugin --lang loop |
smiledev link / unlink |
Enlaza simbólicamente un módulo local para pruebas globales. | smiledev link ./modules/loopize++ |
smiledev pack / validate |
Valida integridad y empaqueta en .tar.gz con SHA-256. |
smiledev pack ./modules/loopize++ |
smiledev login / publish |
Autentica con token PAT de CS ID y publica en LoopModules. | smiledev publish ./modules/mi-plugin |
smiledev add-repo / list-repos |
Configura espejos o repositorios externos en JSON. | smiledev add-repo https://repo.cokistudios.com/modules |
Manifiesto smile.json (Estándar e Híbrido)
Un paquete híbrido puede coordinar código en Looping, headers nativos C++17, componentes C# y utilidades Web:
{
"name": "loopize++",
"version": "1.0.0",
"language": "hybrid",
"entry_point": "loopize.loop",
"description": "High-performance 3D/2D game additions library for Looping",
"dependencies": {
"loop-math-3d": "^1.0.0"
},
"components": {
"loop": "loopize.loop",
"cpp": "components/loopize_core.hpp",
"csharp": "components/LoopizeGame.cs",
"js": "components/web-loopize-kit.js"
}
}
Resolución Multifuente & Registro Oficial
El registro principal opera en https://repo.cokistudios.com/modules y expone el catálogo JSON para instalación automática desde CLI:
smiledev add-repo https://repo.cokistudios.com/modules
smiledev list-repos
smiledev repo-spec
Manual completo disponible
Consulta todas las especificaciones detalladas en SMILEDEV_README.md.