Convierte PDF, DOCX, PPTX, XLSX y archivos de LibreOffice a Markdown limpio para usar con LLMs.
Enviar un .md a un modelo de lenguaje consume menos tokens que un PDF y produce mejores resultados — este proyecto automatiza esa conversión con una interfaz web local.
| Formato | Extensión |
|---|---|
.pdf |
|
| Word | .docx |
| PowerPoint | .pptx |
| Excel | .xlsx .xls |
| LibreOffice Writer | .odt |
| LibreOffice Calc | .ods |
| LibreOffice Impress | .odp |
- Python 3.10 o superior
# 1. Clonar el repositorio
git clone https://github.com/Helminth117/doc2md_app.git
cd doc2md_app
# 2. Crear entorno virtual
python -m venv .venv
# 3. Activar el entorno virtual
# Linux / macOS (bash/zsh)
source .venv/bin/activate
# Fish shell (Linux)
source .venv/bin/activate.fish
# Windows
.venv\Scripts\activate
# 4. Instalar dependencias
pip install -r requirements.txt
# 5. Correr la app
python app.pyAbre http://localhost:5000 en tu navegador.
- Arrastra tu archivo a la zona de drop o haz clic para seleccionarlo.
- Presiona Convertir.
- Revisa el preview de Markdown en el panel derecho.
- Descarga el archivo
.mdcon el botón de descarga.
| Librería | Uso |
|---|---|
flask |
Servidor web |
pdfplumber |
Extracción de texto y tablas de PDF |
mammoth |
Conversión de DOCX a Markdown |
python-pptx |
Lectura de presentaciones PPTX |
openpyxl |
Lectura de hojas de cálculo XLSX |
odfpy |
Soporte para formatos LibreOffice (ODT, ODS, ODP) |
doc2md_app/
├── app.py # Backend Flask y lógica de conversión
├── requirements.txt # Dependencias Python
├── templates/
│ └── index.html # Interfaz web (HTML/CSS/JS)
├── uploads/ # Archivos temporales (se eliminan tras convertir)
└── outputs/ # Archivos .md generados
MIT