Un prompt minimalista y personalizable para distintos shells, escrito en Rust, que muestra información relevante del proyecto y del entorno.
medialab/xan
Herramienta de línea de comandos escrita en Rust para previsualizar, filtrar, agregar, combinar y transformar archivos CSV y TSV directamente desde la terminal.
Alternativa open source a:Microsoft Excel
- Estrellas
- 4,540
- Forks
- 94
- Issues abiertos
- 127
- Último commit
- hace 18 horas
¿Qué es?
xan es una herramienta de línea de comandos para procesar archivos CSV desde la terminal. Ofrece un amplio conjunto de subcomandos combinables para previsualizar, buscar, filtrar, recortar, ordenar, eliminar duplicados, agregar y combinar datos tabulares, que se pueden encadenar en pipelines.
Está escrita en Rust y se basa en un parser CSV SIMD; además, algunas operaciones se paralelizan entre varios hilos, por lo que puede procesar archivos de gigabytes o terabytes. También incluye un lenguaje de expresiones propio, diseñado para filas CSV y utilizado por comandos como filter, map, transform, agg y groupby. Asimismo, permite convertir datos desde y hacia formatos como JSON, NDJSON, Excel y Parquet.
El proyecto surgió como un fork de xsv y SciencesPo's médialab lo reescribió en gran medida. Incluye funciones pensadas para la recolección de datos web y el análisis de ciencias sociales, como lexicometría, utilidades para grafos y scraping de HTML. También ofrece vistas en la terminal, histogramas, gráficos y mapas de calor para explorar datos rápidamente.
Funciones clave
- 01Previsualiza, busca, filtra, recorta, ordena y elimina duplicados de archivos CSV desde la terminal.
- 02Agrega y agrupa datos con un lenguaje de expresiones personalizado.
- 03Combina, fusiona, divide y reestructura tablas con pivot y unpivot.
- 04Convierte entre CSV y formatos como JSON, NDJSON, Excel y Parquet.
- 05Lee archivos comprimidos con gzip y zstd, y formatos habituales de bioinformática como VCF, SAM y BED.
- 06Genera histogramas, gráficos de dispersión y mapas de calor en la terminal.
Casos de uso
- Inspeccionar o filtrar rápidamente una exportación CSV grande sin cargarla en una hoja de cálculo.
- Crear pipelines de shell reproducibles para limpiar y agregar datos tabulares.
- Calcular tablas de frecuencias y estadísticas descriptivas de encuestas o conjuntos de datos recopilados de la web.
- Convertir datos entre CSV y formatos como JSON o Excel mediante scripts.
Inicio rápido
- 1
Instala xan con Cargo
cargo install xan --locked - 2
Descarga el corpus de muestra
curl -LO https://github.com/medialab/corpora/raw/master/polarisation/medias.csv - 3
Previsualiza el archivo en la terminal
xan view medias.csv
Temas
Preguntas frecuentes
- ¿Qué es xan?
- Herramienta de línea de comandos escrita en Rust para previsualizar, filtrar, agregar, combinar y transformar archivos CSV y TSV directamente desde la terminal. xan es una herramienta de línea de comandos para procesar archivos CSV desde la terminal. Ofrece un amplio conjunto de subcomandos combinables para previsualizar, buscar, filtrar, recortar, ordenar, eliminar duplicados, agregar y combinar datos tabulares, que se pueden encadenar en pipelines.
- ¿xan es gratuito? ¿Qué licencia tiene?
- xan es open source bajo la licencia Unlicense. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿xan sigue mantenido?
- Mantenimiento activo. El último commit de xan fue el 20 oct 2026.
- ¿Para qué puedo usar xan?
- Inspeccionar o filtrar rápidamente una exportación CSV grande sin cargarla en una hoja de cálculo. Crear pipelines de shell reproducibles para limpiar y agregar datos tabulares. Calcular tablas de frecuencias y estadísticas descriptivas de encuestas o conjuntos de datos recopilados de la web. Convertir datos entre CSV y formatos como JSON o Excel mediante scripts.
- ¿Cómo se instala xan?
- Instala xan con Cargo: cargo install xan --locked Descarga el corpus de muestra: curl -LO https://github.com/medialab/corpora/raw/master/polarisation/medias.csv Previsualiza el archivo en la terminal: xan view medias.csv
- ¿Dónde consigo xan?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/medialab/xan
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una pequeña CLI en Rust que muestra datos CSV, TSV, JSON y SQLite como tablas elegantes con diseño automático en la terminal.
Una aplicación ligera de terminal (TUI) para ver y consultar archivos de datos tabulares como CSV, Parquet, JSON, Excel y SQLite.
Warp es un entorno de desarrollo agéntico basado en la terminal, con un agente de programación integrado o compatibilidad con tus propios agentes de CLI.
Un clon de cat(1) para la terminal, con resaltado de sintaxis, indicadores de cambios de Git y paginación automática.
Una alternativa rápida y fácil de usar al comando Unix find para buscar archivos y directorios por nombre desde la línea de comandos.