skillfed

ezodf

A Python package to create/manipulate OpenDocumentFormat files.

ezodf v0.3.2 151.4K downloads/30d#10,936 on PyPI76
Permissive license MIT License Abandoned released

What it is and what it does

ezodf is a Python library for programmatic creation and manipulation of OpenDocument Format (ODF) files—the standard format used by LibreOffice and OpenOffice. It lets you create new documents (text, spreadsheet, presentation, drawing) from scratch or open existing ones, then add or modify content like paragraphs, headings, sheets, cells, and formulas. The library abstracts away the XML complexity of ODF's ZIP-based structure, exposing a simple Python API for common document operations.

The package was last released in December 2015 and is no longer actively maintained. Its classifiers declare support for Python 2.6 through 3.4, versions that are now end-of-life. While the GitHub repository has not been archived, the lack of recent commits and releases means it has not been updated for modern Python ecosystems, security patches, or compatibility with current versions of the ODF specification.

Use it for:

  • Generate ODF spreadsheets programmatically with cell values, formulas, and formatting from Python scripts or web services.
  • Extract and modify text content in OpenDocument text files (.odt) without requiring LibreOffice or OpenOffice to be installed.
  • Batch-create presentation or drawing templates in ODF format from data or templates.
  • Build document generation pipelines that produce ODF output compatible with LibreOffice and OpenOffice.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

ezodf creates, opens, and modifies OpenDocument Format (ODF) files—including text documents, spreadsheets, presentations, and drawings—allowing you to programmatically add, extract, or edit document content.

No. The package is abandoned (last release December 2015, no maintenance since), targets obsolete Python versions (2.6–3.4), and has incomplete or outdated dependency metadata. While it carries no known security vulnerabilities, the lack of maintenance means no fixes for compatibility issues with modern Python, ODF specification updates, or security concerns. Use an actively maintained alternative like python-docx (for Word documents) or openpyxl (for Excel) if your use case permits, or verify thoroughly that ezodf works with your Python version and ODF requirements before committing to it.

Install

ezodf on PyPI

pip

pip install ezodf

uv

uv add ezodf

poetry

poetry add ezodf

Installing ezodf

Before you install

High install friction: the package has been abandoned since late 2015 (last release December 2015, last commit November 2022) and targets Python versions 2.6–3.4, which are now obsolete. It requires lxml as a runtime dependency but the fact sheet lists no runtime dependencies, suggesting packaging metadata may be incomplete or outdated.

License in practice

Licensed under MIT (permissive), so you may use, modify, and distribute ezodf freely in commercial and private projects without restriction, though you must include the license notice.

Quickstart

from ezodf import newdoc, Paragraph, Heading, Sheet

odt = newdoc(doctype='odt', filename='text.odt')
odt.body += Heading("Chapter 1")
odt.body += Paragraph("This is a paragraph.")
odt.save()

Requires lxml; targets Python 2.6–3.4 (modern Python versions may not be supported); package is abandoned and not maintained.

Verify before relying

  • Whether lxml is correctly declared as a runtime dependency in current package metadata.
  • Compatibility with Python versions beyond 3.4 (package classifiers stop at 3.4).
  • Whether the package works with modern versions of LibreOffice or OpenOffice formats.

Package facts

License MIT License (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 3,896 days since the last release
Last repo commit
First released
Downloads 151,372/month — #10,936 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ezodf-0.3.2.tar.gz

Keywords: ODF, OpenDocumentFormat, OpenOffice, LibreOffice

Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.2Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Topic :: Office/Business :: Office SuitesTopic :: Software Development :: Libraries :: Python Modules

Tags

openoffice document creation pythonodf file manipulation librarycreate odt ods files programmaticallylibreoffice document generationopenoffice spreadsheet python api
document-generationodf-formatabandoned

More Python Modules packages