Metadata-Version: 2.4
Name: moldpy
Version: 0.2.2
Summary: Generador de plantillas y estructuras de proyectos en Python
License: MIT
Project-URL: Homepage, https://github.com/RichardSaintima/MoldPy
Project-URL: Repository, https://github.com/RichardSaintima/MoldPy
Project-URL: Issues, https://github.com/RichardSaintima/MoldPy/issues
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: typer>=0.9.0
Requires-Dist: rich>=13.0.0
Requires-Dist: inquirer>=3.1.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Dynamic: license-file

# 🧱 MoldPy

> Scaffolder e inicializador interactivo de proyectos en Python.

**MoldPy** es una herramienta de línea de comandos (CLI) diseñada para maquetar la estructura inicial de proyectos en Python (APIs en FastAPI) con configuración automática de entornos virtuales (`venv`), `.gitignore` y dependencias.

---

## 🎨 Características

- 🚀 **Plantillas Listas:** Genera proyectos completos para **FastAPI**, **FastAPI + SQL** o **FastAPI + NOSQL**.
- 🛠️ **Entornos Virtuales:** Crea el `venv` e instala las dependencias de `requirements.txt` automáticamente en segundo plano.
- 📋 **Previsualización Clara:** Tabla interactiva con el resumen de la configuración antes de escribir en disco.
- 💅 **Interfaz Moderna:** Diseñada con banderas y colores tipo terminal *cyberpunk*.

---

## 📦 Instalación

Elige el método de instalación que prefieras:

### Opción A: Con `pipx` (Recomendado para la mayoría)

Instala `moldpy` como una herramienta global independiente sin necesidad de crear entornos virtuales manuales:

```bash
pip install pipx
```

```bash
pipx install moldpy
```

### ¿Qué debes hacer ahora mismo?

**Ejecuta estos dos pasos en tu terminal:**

- Configurar el PATH de pipx (solo se hace una vez):

PowerShell

```bash
pipx ensurepath
```

- Cierra tu PowerShell y vuelve a abrirlo.

- Instala tu CLI de forma limpia con pipx:

PowerShell

```bash
pipx install moldpy
```

### Opción B: Con `pip` (Instalación clásica)

Si prefieres usar `pip` directamente, **debes crear y activar primero tu propio entorno virtual (venv) para evitar problemas de permisos** con el Python del sistema:

### Crea y activa un entorno virtual

- Crear el entorno

```bash
python -m venv venv
```

- Activar en Windows (PowerShell)

```bash
.\venv\Scripts\activate
```

- Activar en Linux / macOS

```bash
source venv/bin/activate
```

### Para verificar que se instaló correctamente

```bash
moldpy --version
```

## 🚀 Guía de Uso Paso a Paso

- **Iniciar el Creador de Proyectos**
  Abre la terminal en la carpeta donde quieras crear tu nuevo proyecto y ejecuta:

```bash
moldpy create
```

- **Responder a las Preguntas del Asistente**
MoldPy te guiará con un menú interactivo:
    1. Tipo de proyecto: Elige entre:
        ⚡ API REST en FastAPI (Estructura de API con servidor Uvicorn).
    2. Nombre de la carpeta: El nombre del directorio donde se creará el código.
    3. Autor: Tu nombre o marca personal.
    4. Entorno Virtual (venv): Opción para crear el entorno e instalar dependencias automáticamente.

## 🛠️ Comandos Disponibles

| Comando | Descripción |
| :--- | :--- |
| `moldpy create` | Inicia el asistente interactivo de creación. |
| `moldpy --version` o `moldpy -v` | Muestra la versión actual instalada de MoldPy. |
| `moldpy --help` | Muestra la ayuda general y opciones disponibles. |

## 💻 Pasos Finales para Usar tu Proyecto Generado

**Una vez que MoldPy termine de crear tu proyecto, sigue estos pasos para empezar a trabajar:**

- **Entra a la carpeta generada**:

```bash
cd mi-app
```

- **Activa el Entorno Virtual (venv):**

Windows (PowerShell):
    PowerShell

```bash
.\venv\Scripts\activate
```

Linux / macOS:

```bash
source venv/bin/activate
```

-**Ejecuta tu proyecto**

```bash
python run.py
```

1. ¿Qué hace MoldPy automáticamente por ti?

- Te hace unas preguntas interactivas (tipo de proyecto, nombre, autor, etc.).**

- Crea la carpeta de tu nuevo proyecto (por ejemplo: mi-api).

- Genera un venv interno dentro de mi-api/venv exclusivo para las librerías de tu nueva aplicación **(FastAPI, FastAPI + SQL, FastAPI +  NOSQL.)** e instala sus dependencias automáticamente.
