{"package":"tidy3d","ecosystem":"pypi","latest_version":"2.11.1","description":"A fast FDTD solver","license":"LGPLv2+","license_risk":"unknown","commercial_use_notes":"verify manually — license not parseable / not declared.","homepage":"https://pypi.org/project/tidy3d/","repository":"https://github.com/flexcompute/tidy3d","downloads_weekly":0,"health":{"score":67,"risk":"moderate","breakdown":{"maintenance":25,"popularity":0,"security":25,"maturity":15,"community":2},"deprecated":false,"max_score":100},"vulnerabilities":{"count":0,"critical":0,"high":0,"medium":0,"low":0,"details":[]},"versions":{"latest":"2.11.1","total_count":88,"recent":["2.8.3","2.8.4","2.8.5","2.9.0rc1","2.9.0rc2","2.9.0","2.9.1","2.9.2","2.9.3","2.10.0rc1","2.10.0rc2","2.10.0rc3","2.10.0","2.10.1","2.10.2","2.11.0.dev0","2.11.0.dev1","2.11.0.dev2","2.11.0","2.11.1"]},"metadata":{"deprecated":false,"deprecated_message":null,"maintainers_count":0,"first_published":null,"last_published":"2026-04-22T14:21:58.943519Z","dependencies_count":148,"dependencies":["autograd<2.0.0,>=1.7.0","boto3<2.0.0,>=1.28.0","click<9.0.0,>=8.1.0","dask<2027.0.0,>=2025.12.0","filelock<4.0.0,>=3.20.1","h5netcdf<2.0.0,>=1.0.2","h5py<3.17,>=3.0.0; python_version < \"3.14\"","h5py<3.17,>=3.16.0; python_version >= \"3.14\"","importlib-metadata<10.0.0,>=6.0.0","joblib<2.0.0,>=1.5.3","matplotlib<4.0.0,>=3.10.0","numpy<2.5.0,>=2.2.6","pandas<4.0,>=2.2","pydantic-settings<3.0.0,>=2.10.0","pydantic<3,>=2.10.3","pyjwt<3.0.0,>=2.10.1","pyroots<0.6.0,>=0.5.0","pyyaml<7.0.0,>=6.0.3","requests<3.0.0,>=2.31.0","responses<0.27.0,>=0.25.8","rich<15.0,>=13.0","scipy<2.0,>=1.14","shapely<3.0,>=2.0","toml<0.11.0,>=0.10.2","tomlkit<0.15.0,>=0.13.2","typing-extensions<5.0.0,>=4.15.0","xarray<2026.5.0,>=2023.08","bayesian-optimization<4.0.0,>=2.0.0; extra == \"design\"","pygad==3.3.1; extra == \"design\"","pyswarms<2.0.0,>=1.3.0; extra == \"design\"","bayesian-optimization<4.0.0,>=2.0.0; extra == \"dev\"","cma<5.0.0,>=4.4.1; extra == \"dev\"","coverage<8.0.0,>=7.13.1; extra == \"dev\"","diff-cover<11.0.0,>=10.1.0; extra == \"dev\"","dill<0.5.0,>=0.4.0; extra == \"dev\"","gdstk<1.1,>=0.9.49; extra == \"dev\"","grcwa<0.2.0,>=0.1.2; extra == \"dev\"","ipython<9.0.0,>=8.38.0; extra == \"dev\"","jinja2<4.0.0,>=3.1.2; extra == \"dev\"","jupyter<2.0.0,>=1.1.1; extra == \"dev\"","libcst<2.0.0,>=1.5.0; extra == \"dev\"","memory-profiler<0.62.0,>=0.61.0; extra == \"dev\"","mypy==1.13.0; extra == \"dev\"","myst-parser<5.0.0,>=4.0.1; extra == \"dev\"","nbconvert<8.0.0,>=7.17.0; extra == \"dev\"","nbdime<5.0.0,>=4.0.2; extra == \"dev\"","nbsphinx<0.10.0,>=0.8.7; extra == \"dev\"","networkx<3.0.0,>=2.6.3; extra == \"dev\"","openpyxl<4.0.0,>=3.1.5; extra == \"dev\"","optax<0.3.0,>=0.2.2; extra == \"dev\"","orbax-checkpoint<0.11.33; extra == \"dev\"","pre-commit<5,>=4; extra == \"dev\"","psutil<8.0.0,>=7.2.1; extra == \"dev\"","pydata-sphinx-theme<0.16.0,>=0.13.3; extra == \"dev\"","pygad==3.3.1; extra == \"dev\"","pylint<5.0.0,>=4.0.4; extra == \"dev\"","pyswarms<2.0.0,>=1.3.0; extra == \"dev\"","pytest-cov<7.0.0,>=6.0.0; extra == \"dev\"","pytest-env<2.0.0,>=1.1.5; extra == \"dev\"","pytest-testmon<3.0.0,>=2.1.3; extra == \"dev\"","pytest-timeout<3.0.0,>=2.4.0; extra == \"dev\"","pytest-xdist<4.0.0,>=3.6.1; extra == \"dev\"","pytest<10.0.0,>=8.1; extra == \"dev\"","pyvista<0.48.0,>=0.45; extra == \"dev\"","rtree==1.2.0; extra == \"dev\"","ruff==0.11.11; extra == \"dev\"","sax<0.12,>=0.11; extra == \"dev\"","scikit-rf<2.0.0,>=1.9.0; extra == \"dev\"","signac<3.0.0,>=2.3.0; extra == \"dev\"","sphinx-book-theme<2.0.0,>=1.0.1; extra == \"dev\"","sphinx-copybutton<0.6.0,>=0.5.2; extra == \"dev\"","sphinx-design<0.7.0,>=0.6.1; extra == \"dev\"","sphinx-favicon<2.0.0,>=1.0.1; extra == \"dev\"","sphinx-notfound-page<2.0.0,>=1.1.0; extra == \"dev\"","sphinx-sitemap<3.0.0,>=2.5.1; extra == \"dev\"","sphinx-tabs<4.0.0,>=3.4.7; extra == \"dev\"","sphinx<9.0.0,>=6; extra == \"dev\"","sphinxemoji<0.4.0,>=0.3.2; extra == \"dev\"","tmm<0.3.0,>=0.2.0; extra == \"dev\"","torch<3.0.0,>=2.2.0; sys_platform != \"darwin\" and extra == \"dev\"","torch<3.0.0,>=2.2.0; sys_platform == \"darwin\" and extra == \"dev\"","towncrier<26.0.0,>=25.8.0; extra == \"dev\"","tox<5.0.0,>=4.33.0; extra == \"dev\"","trame-vtk<3.0.0,>=2.0.0; extra == \"dev\"","trame-vuetify<3.0.0,>=2.0.0; extra == \"dev\"","trame<4.0.0,>=3.0.0; extra == \"dev\"","trimesh<5.0.0,>=4.6; extra == \"dev\"","vtk<10.0.0,>=9.6.0; extra == \"dev\"","zizmor<2.0.0,>=1.20.0; extra == \"dev\"","cma<5.0.0,>=4.4.1; extra == \"docs\"","gdstk<1.1,>=0.9.49; extra == \"docs\"","grcwa<0.2.0,>=0.1.2; extra == \"docs\"","ipython<9.0.0,>=8.38.0; extra == \"docs\"","jinja2<4.0.0,>=3.1.2; extra == \"docs\"","jupyter<2.0.0,>=1.1.1; extra == \"docs\"","myst-parser<5.0.0,>=4.0.1; extra == \"docs\"","nbconvert<8.0.0,>=7.17.0; extra == \"docs\"","nbdime<5.0.0,>=4.0.2; extra == \"docs\"","nbsphinx<0.10.0,>=0.8.7; extra == \"docs\"","openpyxl<4.0.0,>=3.1.5; extra == \"docs\"","optax<0.3.0,>=0.2.2; extra == \"docs\"","orbax-checkpoint<0.11.33; extra == \"docs\"","pydata-sphinx-theme<0.16.0,>=0.13.3; extra == \"docs\"","pylint<5.0.0,>=4.0.4; extra == \"docs\"","sax<0.12,>=0.11; extra == \"docs\"","signac<3.0.0,>=2.3.0; extra == \"docs\"","sphinx-book-theme<2.0.0,>=1.0.1; extra == \"docs\"","sphinx-copybutton<0.6.0,>=0.5.2; extra == \"docs\"","sphinx-design<0.7.0,>=0.6.1; extra == \"docs\"","sphinx-favicon<2.0.0,>=1.0.1; extra == \"docs\"","sphinx-notfound-page<2.0.0,>=1.1.0; extra == \"docs\"","sphinx-sitemap<3.0.0,>=2.5.1; extra == \"docs\"","sphinx-tabs<4.0.0,>=3.4.7; extra == \"docs\"","sphinx<9.0.0,>=6; extra == \"docs\"","sphinxemoji<0.4.0,>=0.3.2; extra == \"docs\"","tmm<0.3.0,>=0.2.0; extra == \"docs\"","tidy3d-extras==2.11.1; extra == \"extras\"","gdstk<1.1,>=0.9.49; extra == \"gdstk\"","networkx<3.0.0,>=2.6.3; extra == \"heatcharge\"","rtree==1.2.0; extra == \"heatcharge\"","trimesh<5.0.0,>=4.6; extra == \"heatcharge\"","vtk<10.0.0,>=9.6.0; extra == \"heatcharge\"","torch<3.0.0,>=2.2.0; sys_platform != \"darwin\" and extra == \"pytorch\"","torch<3.0.0,>=2.2.0; sys_platform == \"darwin\" and extra == \"pytorch\"","pyvista<0.48.0,>=0.45; extra == \"pyvista\"","trame-vtk<3.0.0,>=2.0.0; extra == \"pyvista\"","trame-vuetify<3.0.0,>=2.0.0; extra == \"pyvista\"","trame<4.0.0,>=3.0.0; extra == \"pyvista\"","vtk<10.0.0,>=9.6.0; extra == \"pyvista\"","ruff==0.11.11; extra == \"ruff\"","scikit-rf<2.0.0,>=1.9.0; extra == \"scikit-rf\"","networkx<3.0.0,>=2.6.3; extra == \"tests\"","orbax-checkpoint<0.11.33; extra == \"tests\"","pre-commit<5,>=4; extra == \"tests\"","psutil<8.0.0,>=7.2.1; extra == \"tests\"","pylint<5.0.0,>=4.0.4; extra == \"tests\"","pytest-cov<7.0.0,>=6.0.0; extra == \"tests\"","pytest-env<2.0.0,>=1.1.5; extra == \"tests\"","pytest-testmon<3.0.0,>=2.1.3; extra == \"tests\"","pytest-timeout<3.0.0,>=2.4.0; extra == \"tests\"","pytest-xdist<4.0.0,>=3.6.1; extra == \"tests\"","pytest<10.0.0,>=8.1; extra == \"tests\"","rtree==1.2.0; extra == \"tests\"","trimesh<5.0.0,>=4.6; extra == \"tests\"","networkx<3.0.0,>=2.6.3; extra == \"trimesh\"","rtree==1.2.0; extra == \"trimesh\"","trimesh<5.0.0,>=4.6; extra == \"trimesh\"","vtk<10.0.0,>=9.6.0; extra == \"vtk\""]},"github_stats":{"stars":333,"forks":74,"open_issues":103,"is_archived":false,"pushed_at":"2026-04-28T18:49:49Z","subscribers_count":10},"bundle":null,"typescript":null,"known_issues":{"bugs_count":0,"bugs_severity":{},"status_breakdown":{},"link":null,"scope":"none"},"historical_compromise":null,"recommendation":{"action":"safe_to_use","issues":[],"use_version":"2.11.1","version_hint":null,"summary":"tidy3d@2.11.1 is safe to use (health: 67/100)"},"version_scoped":null,"requested_version":null,"_cache":"miss","_response_ms":1019,"_powered_by":"depscope.dev — free package intelligence for AI agents","typosquat":{"is_suspected":false},"maintainer_trust":{"available":false},"malicious":{"is_malicious":false},"scorecard":{"available":false},"quality":{"available":false},"version_history_summary":{"total_versions":20,"first_release_age_days":null,"last_release_days_ago":6,"avg_days_between_releases":null,"release_velocity":"active"}}