Translate PDF and DOCX documents from English to Vietnamese.
pip install -r requirements.txtpython run.pyThat's it! Open http://localhost:8000 in your browser.
- Open http://localhost:8000
- Upload a PDF or DOCX file
- Wait for translation to complete (progress shown on screen)
- Click "Download" to get your translated PDF
- ✅ Upload PDF or DOCX files
- ✅ Real-time progress tracking
- ✅ Download translated PDF
- ✅ Works offline (no internet needed for mock translator)
- ✅ No Docker required
- ✅ No Redis required
/app
main.py # FastAPI app
/api/routes.py # API endpoints
/services # Translation, extraction, rendering
/models # Job tracking
/web/templates # HTML pages
/tests # Test suite
run.py # ← Run this file!
pytest| Method | Path | Description |
|---|---|---|
POST |
/api/upload |
Upload file, returns job_id |
GET |
/api/jobs/{job_id} |
Get translation progress |
GET |
/api/download/{job_id} |
Download translated PDF |
| Variable | Default | Description |
|---|---|---|
MAX_UPLOAD_SIZE_MB |
50 |
Max file size |
TRANSLATOR_BACKEND |
mock |
mock or argos |
To use actual English→Vietnamese translation:
pip install argostranslate
python -c "
import argostranslate.package
argostranslate.package.update_package_index()
packages = argostranslate.package.get_available_packages()
en_vi = next(p for p in packages if p.from_code == 'en' and p.to_code == 'vi')
argostranslate.package.install_from_path(en_vi.download())
print('Done!')
"
# Then set environment variable before running:
set TRANSLATOR_BACKEND=argos # Windows
export TRANSLATOR_BACKEND=argos # Linux/Mac
python run.pyMIT