from setuptools import setup, find_packages with open("README.md", "r", encoding="utf-8") as fh: long_description = fh.read() with open("requirements.txt", "r", encoding="utf-8") as fh: requirements = [line.strip() for line in fh if line.strip() and not line.startswith("#")] setup( name="three-body-problem", version="1.0.0", author="ThreeBodyProblem Team", author_email="threebody@example.com", description="A pure Python solver for the three-body problem", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/yourusername/three-body-problem", packages=find_packages(), classifiers=[ "Development Status :: 4 - Beta", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Astronomy", "Topic :: Scientific/Engineering :: Physics", ], python_requires=">=3.7", install_requires=requirements, extras_require={ "dev": [ "pytest>=7.0.0", "black>=22.0.0", "flake8>=5.0.0", ], "docs": [ "sphinx>=5.0.0", "sphinx-rtd-theme>=1.0.0", ], }, entry_points={ "console_scripts": [ "three-body-demo=three_body_problem.demo:main", ], }, )