create-proyect-cli
Advanced tools
@@ -26,3 +26,3 @@ { | ||
| "name": "create-proyect-cli", | ||
| "version": "2.1.9" | ||
| "version": "2.2.0" | ||
| }, | ||
@@ -546,3 +546,3 @@ "node_modules/@isaacs/cliui": { | ||
| "requires": true, | ||
| "version": "2.1.9" | ||
| "version": "2.2.0" | ||
| } |
+3
-3
| { | ||
| "artifactDownloadUrls": [ | ||
| "https://github.com/CARLOSMARES/proyecto-cli/releases/download/2.1.9" | ||
| "https://github.com/CARLOSMARES/proyecto-cli/releases/download/v2.2.0" | ||
| ], | ||
| "author": "Carlos Ignacio Olano Mares", | ||
| "author": "Carlos Ignacio Olano Mares <carlosignacio_olano@outlook.com>", | ||
| "bin": { | ||
@@ -99,3 +99,3 @@ "create-proyect-cli": "run-create-proyect-cli.js" | ||
| }, | ||
| "version": "2.1.9", | ||
| "version": "2.2.0", | ||
| "volta": { | ||
@@ -102,0 +102,0 @@ "node": "18.14.1", |
+125
-42
@@ -38,4 +38,6 @@ # Create Proyect CLI 🚀 | ||
| Una vez instalado, ejecuta el CLI desde cualquier directorio: | ||
| El CLI soporta dos modos de operación: | ||
| ## Modo Interactivo (por defecto) | ||
| ```bash | ||
@@ -47,4 +49,52 @@ create-proyect-cli | ||
| ## Modo Comandos | ||
| ```bash | ||
| # Crear proyecto React | ||
| create-proyect-cli create --template=react --name=my-app | ||
| # Crear proyecto Vue | ||
| create-proyect-cli generate --template=vue --name=my-vue-app | ||
| # Crear API Express con Drizzle | ||
| create-proyect-cli new --template=api --name=my-api --orm=drizzle --database=postgresql --jwt --security --swagger | ||
| # Ver ayuda | ||
| create-proyect-cli --help | ||
| create-proyect-cli create --help | ||
| ``` | ||
| --- | ||
| # 🛠️ Comandos y Banderas | ||
| ## Subcomandos | ||
| | Comando | Descripción | | ||
| |---------|-------------| | ||
| | `create` | Crear un nuevo proyecto | | ||
| | `generate` | Generar un nuevo proyecto (alias de create) | | ||
| | `new` | Crear un nuevo proyecto (alias de create) | | ||
| | `interactive` | Iniciar el CLI en modo interactivo | | ||
| ## Banderas Disponibles | ||
| | Bandera | Descripción | Valores | | ||
| |--------|------------|---------| | ||
| | `--template` | Tipo de proyecto | `react`, `vue`, `angular`, `ionic`, `api`, `rust`, `python` | | ||
| | `--name` | Nombre del proyecto | string | | ||
| | `--orm` | ORM a usar (API) | `drizzle`, `prisma`, `typeorm` | | ||
| | `--database` | Base de datos | `mysql`, `postgresql`, `sqlite` | | ||
| | `--jwt` | Incluir autenticación JWT | flag | | ||
| | `--security` | Incluir seguridad (helmet, rate-limit, zod) | flag | | ||
| | `--swagger` | Incluir Swagger | flag | | ||
| | `--jest` | Incluir Jest para testing | flag | | ||
| | `--winston` | Incluir Winston para logs | flag | | ||
| | `--docker` | Incluir Docker | flag | | ||
| | `--docker-compose` | Incluir Docker Compose con DB | flag | | ||
| | `--git` | Inicializar repositorio Git | flag | | ||
| | `--install` | Instalar dependencias automáticamente | flag | | ||
| --- | ||
| # 🛠️ Funcionalidades | ||
@@ -58,55 +108,64 @@ | ||
| * Angular | ||
| * React | ||
| * Vue (Vite) | ||
| * Ionic | ||
| * **React** - Con Vite (`npm create vite`) | ||
| * **Vue** - Con Vite (`npm create vite`) | ||
| * **Angular** | ||
| * **Ionic** | ||
| ### Backend (API Express + TypeScript) | ||
| Genera una arquitectura backend moderna con: | ||
| Genera una arquitectura **SOLID** moderna con: | ||
| * rutas | ||
| * controladores | ||
| * middlewares | ||
| * configuración base escalable | ||
| ``` | ||
| src/ | ||
| ├── domain/ | ||
| │ ├── entities/ # Interfaces y DTOs | ||
| │ └── repositories/ # Interfaces de repositorio | ||
| ├── application/ | ||
| │ └── usecases/ # Casos de uso | ||
| └── infrastructure/ | ||
| ├── controllers/ # Controladores | ||
| ├── middleware/ # Middlewares (auth, error handling) | ||
| ├── repositories/ # Implementaciones | ||
| └── routes/ # Rutas | ||
| ``` | ||
| Opciones disponibles durante la generación: | ||
| **Opciones de ORM:** | ||
| **Bases de datos** | ||
| * **Drizzle** - ORM moderno y liviano | ||
| * **Prisma** - ORM robusto con migración | ||
| * **TypeORM** - ORM con patrón ActiveRecord | ||
| * MySQL | ||
| * MongoDB | ||
| * SQL Server | ||
| * MariaDB | ||
| * SQLite | ||
| **Seguridad integrada:** | ||
| **ORMs** | ||
| * **Helmet** - Headers de seguridad | ||
| * **express-rate-limit** - Limitación de peticiones | ||
| * **Zod** - Validación de datos | ||
| * **CORS** - Configuración de CORS | ||
| * **JWT** - Autenticación con JSON Web Tokens | ||
| * **bcryptjs** - Hash de contraseñas | ||
| * Prisma | ||
| * TypeORM | ||
| * Mongoose | ||
| **Documentación:** | ||
| **Documentación** | ||
| * **Swagger/OpenAPI** - Documentación automática (`swagger-ui-express`) | ||
| * Swagger (`swagger-ui-express`) | ||
| **Logging:** | ||
| **Contenedores** | ||
| * **Winston** - Sistema de logs configurable | ||
| * Docker | ||
| * Docker Compose | ||
| **Testing:** | ||
| --- | ||
| * **Jest** - Framework de testing | ||
| ### Otros lenguajes | ||
| **Contenedores:** | ||
| También puedes crear proyectos base en: | ||
| * **Docker** - Imagen optimizada | ||
| * **Docker Compose** - Con base de datos | ||
| **Python** | ||
| ### Python | ||
| * proyecto inicial | ||
| * entorno virtual (`venv`) automático | ||
| * Proyecto base con `venv` automático | ||
| **Rust** | ||
| ### Rust | ||
| * proyecto inicial usando `cargo` | ||
| * Proyecto base usando `cargo` | ||
@@ -125,3 +184,3 @@ --- | ||
| Detecta automáticamente el gestor de paquetes y ejecuta la instalación: | ||
| Detecta automáticamente el gestor de paquetes: | ||
@@ -135,6 +194,32 @@ * npm | ||
| Elimina de forma segura directorios o proyectos locales desde la terminal. | ||
| Elimina de forma segura directorios o proyectos locales. | ||
| --- | ||
| # 🎯 Ejemplos | ||
| ```bash | ||
| # Crear proyecto React con todas las opciones | ||
| create-proyect-cli create --template=react --name=my-app --install | ||
| # Crear API Express con Drizzle y todas las features | ||
| create-proyect-cli create --template=api --name=my-api \ | ||
| --orm=drizzle \ | ||
| --database=postgresql \ | ||
| --jwt \ | ||
| --security \ | ||
| --swagger \ | ||
| --jest \ | ||
| --winston \ | ||
| --docker \ | ||
| --docker-compose \ | ||
| --git \ | ||
| --install | ||
| # Crear proyecto Vue | ||
| create-proyect-cli generate --template=vue --name=my-vue-app --install | ||
| ``` | ||
| --- | ||
| # 🎯 Objetivo del proyecto | ||
@@ -152,6 +237,4 @@ | ||
| Las contribuciones son bienvenidas. | ||
| Las contribuciones son bienvenidas. Puedes ayudar de varias maneras: | ||
| Puedes ayudar de varias maneras: | ||
| * reportando bugs | ||
@@ -161,5 +244,5 @@ * proponiendo nuevas features | ||
| Repositorio oficial: | ||
| **Repositorio oficial:** | ||
| <https://github.com/CARLOSMARES/proyecto-cli> | ||
| https://github.com/CARLOSMARES/proyecto-cli | ||
@@ -178,2 +261,2 @@ --- | ||
| Consulta el archivo `LICENSE` para más detalles. | ||
| Consulta el archivo `LICENSE` para más detalles. |
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
Found 1 instance in 1 package
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
Found 1 instance in 1 package
73345
4.11%254
47.67%