setup.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. """
  2. 223-236-template-6: BMAD Novel Translator
  3. A novel translation tool with glossary support and crash-safe state management.
  4. """
  5. from setuptools import setup, find_packages
  6. with open("README.md", "r", encoding="utf-8") as fh:
  7. long_description = fh.read()
  8. setup(
  9. name="bmad-novel-translator",
  10. version="0.1.0",
  11. author="BMAD Team",
  12. description="A novel translation tool with glossary support and crash-safe state management",
  13. long_description=long_description,
  14. long_description_content_type="text/markdown",
  15. packages=find_packages(where="src"),
  16. package_dir={"": "src"},
  17. classifiers=[
  18. "Development Status :: 3 - Alpha",
  19. "Intended Audience :: Developers",
  20. "Programming Language :: Python :: 3",
  21. "Programming Language :: Python :: 3.10",
  22. ],
  23. python_requires=">=3.10",
  24. install_requires=[
  25. "transitions>=0.9.0",
  26. "pyyaml>=6.0.1",
  27. ],
  28. extras_require={
  29. "dev": [
  30. "pytest>=7.4.0",
  31. "pytest-cov>=4.1.0",
  32. "pytest-asyncio>=0.23.0",
  33. ],
  34. # ML dependencies for translation service (optional)
  35. # Note: torch is large (~915MB). If already installed, skip via: pip install -e ".[mcp,dev]"
  36. "ml": [
  37. # "torch>=2.0.0", # Comment out to avoid large download, install separately if needed
  38. "transformers>=4.30.0",
  39. "sentencepiece>=0.1.99",
  40. ],
  41. "mcp": [
  42. "fastmcp>=0.1.0",
  43. "mcp>=1.0.0",
  44. "pydantic>=2.0",
  45. "uvicorn>=0.30.0",
  46. ],
  47. },
  48. entry_points={
  49. "console_scripts": [
  50. "novel-translator-mcp=mcp_server.server:main",
  51. ]
  52. },
  53. )