{"id":23194950,"url":"https://github.com/whatnick/python-depviz","last_synced_at":"2025-04-05T07:43:47.703Z","repository":{"id":141284209,"uuid":"342772236","full_name":"whatnick/python-depviz","owner":"whatnick","description":"Three.js based Python Dependency Visualization tool","archived":false,"fork":false,"pushed_at":"2023-10-03T00:24:51.000Z","size":65,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-10T15:32:07.069Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/whatnick.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-27T04:41:54.000Z","updated_at":"2023-10-03T00:24:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"529042a6-b41c-4e16-bb86-853b923f96e9","html_url":"https://github.com/whatnick/python-depviz","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/whatnick%2Fpython-depviz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/whatnick%2Fpython-depviz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/whatnick%2Fpython-depviz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/whatnick%2Fpython-depviz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/whatnick","download_url":"https://codeload.github.com/whatnick/python-depviz/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247305901,"owners_count":20917203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-18T13:16:12.553Z","updated_at":"2025-04-05T07:43:47.685Z","avatar_url":"https://github.com/whatnick.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python Dependency Tree Visualizer\n\nThis project visualizes the dependency tree for Python environments. This is a hobby project born out of the frustration with\nmanaging complex Python environments reliably and continuously adding packages to them. It is meant to help isolate unrelated\npackages or identify critical packages upgrading which will have very wide ranging impact. It also does not address issues with\nABI's(usually pronounced Abyss), that will need a new tool which tracks python dependencies back to C/C++/Fortran and other\nsystem language land.\n\nSee a sample [here](https://whatnick.github.io/python-depviz/index.html).\n\nA much simpler bare osgeo4w python environment for comparison is [here](https://whatnick.github.io/python-depviz/osgeo4w.html).\n\nGeoscience Australia [DEA Sandbox](https://app.sandbox.dea.ga.gov.au/) is included as a sample environment. The following steps were performed to build the sample.\n\n- Pull [sandbox docker image](https://hub.docker.com/r/geoscienceaustralia/sandbox/tags?page=1\u0026ordering=last_updated) or log onto sandbox\n- Install pipdeptree with `pip install pipdeptree` at the console or via a notebook.\n- Generate and persist dependency graph via `pipdeptree -j \u003e dependencies.json`\n- Load graph data onto [3d-force-graph](https://github.com/vasturiano/3d-force-graph) using js object version of the JSON or via fetch API when the file is hosted on https.\n- Display app in web page after reorganizing the tree into nodes and edges format the library accepts.\n- For a live deployment run sandbox container for Jhub based development\n  - Dynamically install packages in the hub\n  - Persist graph regularly via pipdeptree\n  - Push to viz and update page","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhatnick%2Fpython-depviz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwhatnick%2Fpython-depviz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhatnick%2Fpython-depviz/lists"}