> ## Documentation Index
> Fetch the complete documentation index at: https://docs.doconda.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Alternativa a python-docx sin plantillas

> Cómo generar un Word (.docx) desde Python sin plantillas ni código de maquetación, con títulos, tablas y estilos editables.

Para generar un Word desde Python sin plantillas, pasa tu contenido en Markdown (o una frase) a Doconda y recibe el
`.docx` maquetado, con su PDF. No escribes código de párrafos, estilos ni tablas: el aspecto se describe en una
frase (`style`) y se aplica a los estilos de Word, así el archivo sigue siendo editable.

## El problema en la práctica

* Cada título, lista y tabla es código: añadir una sección nueva es tocar el programa.
* Las plantillas `.docx` hay que diseñarlas, versionarlas y mantener sus marcadores al día.
* Si el formato se aplica párrafo a párrafo, el documento se ve bien pero cuesta editarlo después en Word.
* Tablas que se salen de la página o títulos que quedan solos al final de una hoja solo se ven al abrir el archivo.

## La solución con Doconda

<CodeGroup>
  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
  from pathlib import Path
  from doconda import Doconda

  doconda = Doconda()  # lee la key de DOCONDA_API_KEY
  doc = doconda.documents.create(
      format="docx",
      content={"markdown": "# Nota interna\n\nLa reunión del lunes pasa a las 10:00."},
      style="letra Lora, títulos azules, con números de página",
  )
  Path("nota.docx").write_bytes(doconda.documents.download(doc["id"], "docx"))
  ```

  ```ts TypeScript theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
  import { writeFile } from "node:fs/promises"
  import { Doconda } from "@doconda/sdk"

  const doconda = new Doconda()
  const doc = await doconda.documents.create({
    format: "docx",
    content: { markdown: "# Nota interna\n\nLa reunión del lunes pasa a las 10:00." },
    style: "letra Lora, títulos azules, con números de página",
  })
  await writeFile("nota.docx", await doconda.documents.download(doc.id, "docx"))
  ```
</CodeGroup>

Sin contenido propio, pide el documento con una frase: `prompt="Contrato de alquiler de vivienda de 900 € al mes"`.

## Qué recibes

* El `.docx` y su PDF (`doconda.documents.download(doc["id"], "pdf")`).
* `status`: `ready`, `ready_with_warnings`, `needs_review` o `failed` (no se cobra).
* `style_unsupported`: lo que pediste en `style` y no se pudo aplicar. Nunca se ignora en silencio.
* Un informe (`documents.report(id)`) con lo que conviene mirar.

## Preguntas frecuentes

<AccordionGroup>
  <Accordion title="¿Cómo crear un documento Word en Python sin plantilla?">
    Instala el SDK (`pip install doconda`) y llama a `documents.create` con `format="docx"` y tu Markdown en
    `content`. El aspecto va en `style`, en lenguaje normal. No hace falta ningún archivo de plantilla.
  </Accordion>

  <Accordion title="¿El Word generado se puede editar después?">
    Sí. El estilo se aplica a los estilos de Word (Normal, Título 1…), no párrafo a párrafo. Si cambias un estilo en
    Word, cambia todo el documento.
  </Accordion>

  <Accordion title="¿Puedo convertir Markdown a docx con tablas y listas?">
    Sí. El Markdown admite títulos, párrafos, listas, tablas, negrita y cursiva, enlaces, saltos de página e imágenes.
    El texto se usa tal cual.
  </Accordion>
</AccordionGroup>

## Sigue leyendo

* [Crear](/guides/create): todas las opciones de creación.
* [Revisar](/guides/review): arregla un Word que ya tienes.
* [SDK de Python](/sdk/python) y [SDK de TypeScript](/sdk/introduction).
* [Ejemplos en GitHub](https://github.com/B-C-Software/doconda-examples).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.