# 🚀 Quick Start Guide - Document Translation API ## Step-by-Step Setup (5 Minutes) ### 1️⃣ Open PowerShell in Project Directory ```powershell cd d:\Translate ``` ### 2️⃣ Run the Startup Script ```powershell .\start.ps1 ``` This will automatically: - Create a virtual environment - Install all dependencies - Create necessary directories - Start the API server ### 3️⃣ Test the API **Open another PowerShell window** and run: ```powershell python test_api.py ``` Or visit in your browser: - **API Documentation**: http://localhost:8000/docs - **API Status**: http://localhost:8000/health ## 📤 Translate Your First Document ### Using cURL (PowerShell) ```powershell $file = Get-Item "your_document.xlsx" Invoke-RestMethod -Uri "http://localhost:8000/translate" ` -Method Post ` -Form @{ file = $file target_language = "es" } ` -OutFile "translated_document.xlsx" ``` ### Using Python ```python import requests with open('document.docx', 'rb') as f: response = requests.post( 'http://localhost:8000/translate', files={'file': f}, data={'target_language': 'fr'} ) with open('translated_document.docx', 'wb') as out: out.write(response.content) ``` ### Using the Interactive API Docs 1. Go to http://localhost:8000/docs 2. Click on **POST /translate** 3. Click **"Try it out"** 4. Upload your file 5. Enter target language (e.g., `es` for Spanish) 6. Click **"Execute"** 7. Download the translated file ## 🌍 Supported Languages Use these language codes in the `target_language` parameter: | Code | Language | Code | Language | |------|----------|------|----------| | `es` | Spanish | `fr` | French | | `de` | German | `it` | Italian | | `pt` | Portuguese | `ru` | Russian | | `zh` | Chinese | `ja` | Japanese | | `ko` | Korean | `ar` | Arabic | | `hi` | Hindi | `nl` | Dutch | **Full list**: http://localhost:8000/languages ## 📋 Supported File Types | Format | Extension | What's Preserved | |--------|-----------|------------------| | **Excel** | `.xlsx` | Formulas, merged cells, colors, borders, images | | **Word** | `.docx` | Styles, tables, headers/footers, images | | **PowerPoint** | `.pptx` | Layouts, animations, transitions, media | ## 🔧 Configuration Edit `.env` file to customize: ```env # Translation service: google (free) or deepl (requires API key) TRANSLATION_SERVICE=google # For DeepL (premium translation) DEEPL_API_KEY=your_api_key_here # Maximum file size in MB MAX_FILE_SIZE_MB=50 ``` ## ⚠️ Troubleshooting ### Issue: "Virtual environment activation failed" **Solution**: ```powershell Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser ``` ### Issue: "Module not found" **Solution**: ```powershell .\venv\Scripts\Activate.ps1 pip install -r requirements.txt ``` ### Issue: "Port 8000 already in use" **Solution**: Edit `main.py` line 307: ```python uvicorn.run(app, host="0.0.0.0", port=8001, reload=True) ``` ### Issue: "Translation quality is poor" **Solution**: 1. Get a DeepL API key from https://www.deepl.com/pro-api 2. Update `.env`: ```env TRANSLATION_SERVICE=deepl DEEPL_API_KEY=your_key_here ``` ## 📦 Project Structure ``` Translate/ ├── main.py # FastAPI application (START HERE) ├── config.py # Configuration management ├── start.ps1 # Startup script (RUN THIS FIRST) ├── test_api.py # Testing script │ ├── services/ # Translation service layer │ ├── __init__.py │ └── translation_service.py # Pluggable translation backend │ ├── translators/ # Document-specific translators │ ├── __init__.py │ ├── excel_translator.py # Excel (.xlsx) handler │ ├── word_translator.py # Word (.docx) handler │ ├── pptx_translator.py # PowerPoint (.pptx) handler │ └── excel_advanced.py # Advanced Excel features │ ├── utils/ # Utility modules │ ├── __init__.py │ ├── file_handler.py # File operations │ └── exceptions.py # Error handling │ ├── requirements.txt # Python dependencies ├── README.md # Full documentation ├── ARCHITECTURE.md # Technical architecture └── DEPLOYMENT.md # Production deployment guide ``` ## 🎯 Next Steps ### For Development 1. ✅ Run `start.ps1` to start the server 2. ✅ Test with `test_api.py` 3. ✅ Try translating sample documents 4. Read `ARCHITECTURE.md` for technical details ### For Production 1. Read `DEPLOYMENT.md` for production setup 2. Configure environment variables 3. Set up Docker container 4. Enable authentication and rate limiting ### For MCP Integration 1. Install MCP requirements: `pip install -r requirements-mcp.txt` 2. Review `mcp_server_example.py` 3. Configure MCP server in your AI assistant ## 📞 API Endpoints Reference | Endpoint | Method | Description | |----------|--------|-------------| | `/` | GET | API information | | `/health` | GET | Health check | | `/languages` | GET | Supported languages | | `/translate` | POST | Translate single document | | `/translate-batch` | POST | Translate multiple documents | | `/download/{filename}` | GET | Download translated file | | `/cleanup/{filename}` | DELETE | Delete translated file | ## 💡 Tips & Best Practices 1. **File Size**: Keep files under 50MB for best performance 2. **Format Preservation**: More complex formatting = longer processing time 3. **Language Codes**: Use ISO 639-1 codes (2 letters) 4. **Cleanup**: Enable cleanup to save disk space 5. **Batch Translation**: Use batch endpoint for multiple files ## 🌟 Features Highlights ✨ **Zero Data Loss**: All formatting, colors, styles preserved ✨ **Formula Intelligence**: Translates text in formulas, keeps logic ✨ **Image Preservation**: Embedded media stays in exact positions ✨ **Smart Translation**: Auto-detects source language ✨ **MCP Ready**: Designed for AI assistant integration ## 📄 License MIT License - Free to use and modify ## 🤝 Support - **Documentation**: See `README.md` for full details - **Issues**: Open an issue on the repository - **Architecture**: Read `ARCHITECTURE.md` for technical depth --- **Ready to translate? Run `.\start.ps1` and visit http://localhost:8000/docs** 🚀