Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 37s
CI / test-go-edu-search (push) Successful in 35s
CI / test-python-klausur (push) Failing after 2m41s
CI / test-python-agent-core (push) Successful in 30s
CI / test-nodejs-website (push) Successful in 38s
classroom/ (+2): state_engine_api, state_engine_models vocabulary/ (2): api, db worksheets/ (2): api, models services/ (+6): audio, email, translation, claude_vision, ai_processor, story_generator api/ (4): school, klausur_proxy, progress, user_language Only main.py + config.py remain at root. 16 shims added. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
# Backend Services Module
|
|
# Shared services for PDF generation, file processing, and more
|
|
|
|
# PDFService requires WeasyPrint which needs system libraries (libgobject, etc.)
|
|
# Make import optional for environments without these dependencies (e.g., CI)
|
|
try:
|
|
from .pdf_service import PDFService
|
|
_pdf_available = True
|
|
except (ImportError, OSError) as e:
|
|
PDFService = None # type: ignore
|
|
_pdf_available = False
|
|
|
|
# FileProcessor requires OpenCV which needs libGL.so.1
|
|
# Make import optional for CI environments
|
|
try:
|
|
from .file_processor import FileProcessor
|
|
_file_processor_available = True
|
|
except (ImportError, OSError) as e:
|
|
FileProcessor = None # type: ignore
|
|
_file_processor_available = False
|
|
|
|
# Lazy-loaded service modules (imported on demand to avoid heavy deps at startup):
|
|
# .audio — TTS audio generation for vocabulary words
|
|
# .email — Email/SMTP service
|
|
# .translation — Batch vocabulary translation via Ollama
|
|
# .claude_vision — Claude Vision API for worksheet analysis
|
|
# .ai_processor — Legacy shim for ai_processor/ package
|
|
# .story_generator — Story generation from vocabulary words
|
|
|
|
__all__ = ["PDFService", "FileProcessor"]
|