Files
datatools-dev/README.es.md
Michael 318b9b45dc docs(i18n): ship Spanish translations of buyer-facing docs
Adds README.es.md, docs/README.es.md, docs/USER-GUIDE.es.md, and
docs/CLI-REFERENCE.es.md mirroring the English client-facing set.
Each English doc gains a one-line language-switch banner pointing at
its Spanish counterpart; the docs index advertises both language sets
in the buyer-facing section. Internal docs (TECHNICAL, DECISIONS,
REQUIREMENTS, BUSINESS, RECOVERY) stay English-only by design — they
don't ship with the product.

The CLI itself emits English only, so CLI-REFERENCE.es.md notes that
flags and values are language-invariant while translating the prose.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 15:21:18 +00:00

94 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
> 🌐 **Idioma:** Español · [English](README.md)
# DataTools
Limpieza local de CSV / Excel. CLI + GUI en el navegador, sin nube, sin ceremonias de instalación. La GUI incluye paquetes de idioma en inglés y español.
## Herramientas
| # | Herramienta | Estado |
|---|------|--------|
| 01 | **Eliminador de duplicados** — coincidencia exacta + difusa, 5 normalizadores, reglas de superviviente, auditoría | Listo |
| 02 | **Limpiador de texto** — espacios, caracteres tipográficos, BOM, finales de línea, mayúsculas/minúsculas | Listo |
| 03 | **Estandarizador de formatos** — fechas, teléfonos, correos, direcciones, nombres, monedas, booleanos | Listo |
| 04 | **Gestor de valores faltantes** — detección de nulos disfrazados, perfil, media/mediana/moda/ffill/bfill/interpolación, estrategias de descarte | Listo |
| 05 | **Mapeador de columnas** — autodetección difusa de renombrados, esquema objetivo con coerción de tipos, campos requeridos con valores por defecto, descartar/reordenar | Listo |
| 06 | Detector de valores atípicos | Próximamente |
| 07 | Combinador de varios archivos | Próximamente |
| 08 | Validador e informes | Próximamente |
| 09 | **Ejecutor de canalizaciones** — encadena herramientas en un orden recomendado (no forzado), guarda/carga JSON, automatiza limpiezas semanales | Listo |
## Descarga (usuarios no técnicos)
Instaladores precompilados — no se requiere Python:
| Plataforma | Descarga | Nota de primer arranque |
|---|---|---|
| **macOS** | `DataTools-X.Y.Z-mac.dmg` | Arrastra DataTools.app a /Applications y haz doble clic. |
| **Windows** | `DataTools-X.Y.Z-win-setup.exe` | Ejecuta el instalador; se inicia desde el menú Inicio. |
| **Linux** | `DataTools-X.Y.Z-linux-x86_64.AppImage` | `chmod +x` al archivo y luego doble clic. |
Última versión: consulta [GitHub Releases](https://git.invixiom.com/giteadmin/datatools-dev/releases) (o el listado de Gumroad). Los instaladores ocupan ~150200 MB; el lanzador arranca un servidor local en http://127.0.0.1:8501 y abre tu navegador. Nada se envía a la nube.
## Instalar desde el código (desarrolladores)
```bash
pip install -r requirements.txt
```
Requiere Python 3.10+.
## Ejecutar
**GUI** (recomendado):
```bash
streamlit run src/gui/app.py
```
**CLI** — siete puntos de entrada:
```bash
python -m src.cli customers.csv [--apply] # deduplicación
python -m src.cli_text_clean messy.csv [--apply] # limpieza de texto
python -m src.cli_format intl.csv [--apply] # estandarización de formatos (auto-stream si >100 MB)
python -m src.cli_missing holes.csv [--apply] # valores faltantes
python -m src.cli_column_map vendor.csv [--apply] # mapeador de columnas
python -m src.cli_pipeline any_file.csv [--apply] # encadena herramientas de extremo a extremo
python -m src.cli_analyze any_file.csv [--json] # solo escanea
```
Cada CLI ejecuta solo previsualización por defecto; añade `--apply` para escribir la salida.
## Idioma
La barra lateral de la GUI tiene un selector de idioma. Se incluyen paquetes para **English** y **Español** (`src/i18n/packs/`); la elección persiste durante la sesión. Para añadir un idioma: coloca un `<código>.json` junto a `en.json` reproduciendo el árbol de claves, y luego añádelo a `LANGUAGES`. Ver [Guía del desarrollador §i18n](docs/DEVELOPER.md#i18n--language-packs) (solo en inglés).
## Verificación de Revisar y Normalizar
Cada archivo subido pasa por una verificación de normalización CSV antes de que cualquier herramienta lo toque. El analizador detecta ~15 tipos de problemas (espacios, caracteres NBSP / de ancho cero, BOM, codificación, puntuación tipográfica, encabezados sucios, centinelas nulos, mojibake, …) etiquetados por **confianza** (alta / media / baja) y **acción de corrección**. La GUI muestra cada hallazgo con Corregir auto / Saltar / Personalizar, una previsualización antes/después en vivo, y un selector para anular la codificación. Las páginas de herramientas se niegan a cargar hasta que se pase la verificación.
## Salida
Cada ejecución escribe:
- `{input}_<tool>.csv` — los datos limpios
- `{input}_changes.csv` (limpiador de texto) o `{input}_match_groups.csv` (duplicados) — pista de auditoría
- `logs/<tool>_YYYYMMDD_HHMMSS.log` — registro de depuración de la ejecución
El archivo de entrada original nunca se modifica.
## Documentación
- [Guía del usuario](docs/USER-GUIDE.es.md) — instalación, flujo de la GUI, verificación
- [Referencia de la CLI](docs/CLI-REFERENCE.es.md) — cada bandera con recetas
- [Requisitos](docs/REQUIREMENTS.md) — tamaños de archivo, codificaciones, detectores, objetivos de rendimiento (solo en inglés)
- [Técnico](docs/TECHNICAL.md) — arquitectura, internos de la verificación, registro de correcciones (solo en inglés)
- [Guía del desarrollador](docs/DEVELOPER.md) — añadir correcciones / detectores / estandarizadores (solo en inglés)
## Dependencias
`pandas`, `openpyxl`, `rapidfuzz`, `phonenumbers`, `typer`, `loguru`, `charset-normalizer`, `streamlit`. Opcional: `ftfy` para reparación de mojibake.
## Licencia
Propietaria.