Skip to main content

Tool to translate big documents using LLMs.

Project description

DocuLingo

License: MIT Version Last commit Commit activity Stars Forks Watchers Contributors

A command-line tool to translate large documents using language models. It preserves the file formatting and simplifies migrating documentation to other languages.


Table of Contents


Overview

doculingo helps you translate documents while preserving their formatting. It currently works with Word files and aims to support additional formats in the future, making it ideal for projects that require multiple language versions without losing the original layout.


Key Features

  • Automatic Translation — uses OpenAI to safely translate paragraphs.
  • 📝 Preserves Styles — copies fonts, colors, and alignment to the translated version.
  • 📄 Document Support — currently handles large .docx files with more formats planned.
  • 🔁 Automatic Retries — retries when the API fails.
  • ⚙️ Simple CLI — clear commands with built-in help.

Installation

Run instantly with uv without installing:

uvx doculingo --help

Or install from PyPI:

pip install doculingo

Quick Start

Translate a Word document from Spanish to English:

doculingo word \
  --input file.docx \
  --output translated.docx \
  --language-source spanish \
  --language-target english

CLI Reference

Get the full list of options with:

doculingo --help

The main subcommand is word, designed for .docx files.


Development

Install the dependencies and run the tool locally:

uv lock
uv sync --all-groups --all-extras
uv run doculingo --help

Environment Variables

Copy .env.example to .env and set OPENAI_API_KEY with your OpenAI key.


License

Distributed under the MIT license. See the license file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

doculingo-0.1.1.tar.gz (36.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

doculingo-0.1.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file doculingo-0.1.1.tar.gz.

File metadata

  • Download URL: doculingo-0.1.1.tar.gz
  • Upload date:
  • Size: 36.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.12

File hashes

Hashes for doculingo-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2cdcb6a224a8dfafb7dda6b21371f736bc958f2bdc3581d91a2cd26e64801c52
MD5 40414a29b95de5fe6db63addf4b98213
BLAKE2b-256 1198226ce28d178770b3b6dbf36090478d7316529ed880bfdc0f035841c8f098

See more details on using hashes here.

File details

Details for the file doculingo-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: doculingo-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.12

File hashes

Hashes for doculingo-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 296214eea17caa44e911b31f8777ccb8b88672f4c1059eac11819859f9844c03
MD5 f933ba28b60a33609be72f23687713a2
BLAKE2b-256 689209bfc2aa3d5d7608faac79e91540987401550e71c1f63fe8de234603318d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page