{"id":29177,"name":"roughness","description":"Predict illumination of planetary surfaces accounting for roughness.","url":"https://github.com/nau-pixel/roughness","last_synced_at":"2025-09-05T04:17:37.251Z","repository":{"id":42583003,"uuid":"328820617","full_name":"NAU-PIXEL/roughness","owner":"NAU-PIXEL","description":"Predict illumination of planetary surfaces accounting for roughness.","archived":false,"fork":false,"pushed_at":"2025-07-22T02:40:55.000Z","size":36654,"stargazers_count":5,"open_issues_count":3,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-07-22T04:29:14.731Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/NAU-PIXEL.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-01-11T23:45:56.000Z","updated_at":"2025-07-22T02:39:06.000Z","dependencies_parsed_at":"2023-01-29T02:15:44.325Z","dependency_job_id":"2046910f-4f5e-4184-8bce-eeca751c8409","html_url":"https://github.com/NAU-PIXEL/roughness","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/NAU-PIXEL/roughness","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NAU-PIXEL%2Froughness","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NAU-PIXEL%2Froughness/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NAU-PIXEL%2Froughness/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NAU-PIXEL%2Froughness/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NAU-PIXEL","download_url":"https://codeload.github.com/NAU-PIXEL/roughness/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NAU-PIXEL%2Froughness/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273710551,"owners_count":25154076,"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","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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"}},"owner":{"login":"NAU-PIXEL","name":"NAU-PIXEL","uuid":"72581556","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/72581556?v=4","repositories_count":2,"last_synced_at":"2023-03-05T22:24:35.566Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/NAU-PIXEL","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-15T23:57:36.006Z","updated_at":"2023-03-05T22:24:35.574Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NAU-PIXEL","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NAU-PIXEL/repositories"},"packages":null,"commits":{"message":"Repository syncing started."},"issues_stats":{"full_name":"nau-pixel/roughness","html_url":"https://github.com/nau-pixel/roughness","last_synced_at":null,"status":null,"issues_count":null,"pull_requests_count":null,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":null,"pull_requests_closed_count":null,"pull_request_authors_count":null,"issue_authors_count":null,"avg_comments_per_issue":null,"avg_comments_per_pull_request":null,"merged_pull_requests_count":null,"bot_issues_count":null,"bot_pull_requests_count":null,"past_year_issues_count":null,"past_year_pull_requests_count":null,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":null,"past_year_pull_requests_closed_count":null,"past_year_pull_request_authors_count":null,"past_year_issue_authors_count":null,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":null,"past_year_bot_pull_requests_count":null,"past_year_merged_pull_requests_count":null,"created_at":"2025-09-05T04:16:58.969Z","updated_at":"2025-09-05T04:16:58.969Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/nau-pixel%2Froughness","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/nau-pixel%2Froughness/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{},"pull_request_author_associations_count":{},"issue_authors":{},"pull_request_authors":{},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10085040,"issues_count":31264903,"pull_requests_count":96289981,"authors_count":10695073,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[],"active_maintainers":[]},"events":{"total":{"WatchEvent":1,"PushEvent":2},"last_year":{"WatchEvent":1,"PushEvent":2}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2022-08-27T19:50:24.329Z","updated_at":"2022-08-27T19:50:24.329Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/poetry.lock","dependencies":[{"id":2953744265,"package_name":"affine","ecosystem":"pypi","requirements":"2.3.1","direct":false,"kind":"runtime","optional":false},{"id":2953744266,"package_name":"appdirs","ecosystem":"pypi","requirements":"1.4.4","direct":false,"kind":"develop","optional":false},{"id":2953744267,"package_name":"appnope","ecosystem":"pypi","requirements":"0.1.2","direct":false,"kind":"develop","optional":false},{"id":2953744268,"package_name":"argon2-cffi","ecosystem":"pypi","requirements":"21.3.0","direct":false,"kind":"develop","optional":false},{"id":2953744269,"package_name":"argon2-cffi-bindings","ecosystem":"pypi","requirements":"21.2.0","direct":false,"kind":"develop","optional":false},{"id":2953744270,"package_name":"astroid","ecosystem":"pypi","requirements":"2.11.2","direct":false,"kind":"develop","optional":false},{"id":2953744271,"package_name":"atomicwrites","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"develop","optional":false},{"id":2953744272,"package_name":"attrs","ecosystem":"pypi","requirements":"21.4.0","direct":false,"kind":"runtime","optional":false},{"id":2953744273,"package_name":"backcall","ecosystem":"pypi","requirements":"0.2.0","direct":false,"kind":"develop","optional":false},{"id":2953744274,"package_name":"beautifulsoup4","ecosystem":"pypi","requirements":"4.10.0","direct":false,"kind":"develop","optional":false},{"id":2953744275,"package_name":"black","ecosystem":"pypi","requirements":"20.8b1","direct":false,"kind":"develop","optional":false},{"id":2953744276,"package_name":"bleach","ecosystem":"pypi","requirements":"4.1.0","direct":false,"kind":"develop","optional":false},{"id":2953744277,"package_name":"certifi","ecosystem":"pypi","requirements":"2021.10.8","direct":false,"kind":"runtime","optional":false},{"id":2953744278,"package_name":"cffi","ecosystem":"pypi","requirements":"1.15.0","direct":false,"kind":"develop","optional":false},{"id":2953744279,"package_name":"cfgv","ecosystem":"pypi","requirements":"3.3.1","direct":false,"kind":"develop","optional":false},{"id":2953744280,"package_name":"cftime","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":2953744281,"package_name":"click","ecosystem":"pypi","requirements":"8.1.1","direct":false,"kind":"runtime","optional":false},{"id":2953744282,"package_name":"click-plugins","ecosystem":"pypi","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":2953744283,"package_name":"cligj","ecosystem":"pypi","requirements":"0.7.2","direct":false,"kind":"runtime","optional":false},{"id":2953744284,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.4","direct":false,"kind":"runtime","optional":false},{"id":2953744285,"package_name":"coverage","ecosystem":"pypi","requirements":"6.3.2","direct":false,"kind":"develop","optional":false},{"id":2953744286,"package_name":"cycler","ecosystem":"pypi","requirements":"0.11.0","direct":false,"kind":"develop","optional":false},{"id":2953744287,"package_name":"debugpy","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744288,"package_name":"decorator","ecosystem":"pypi","requirements":"5.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744289,"package_name":"defusedxml","ecosystem":"pypi","requirements":"0.7.1","direct":false,"kind":"develop","optional":false},{"id":2953744290,"package_name":"dill","ecosystem":"pypi","requirements":"0.3.4","direct":false,"kind":"develop","optional":false},{"id":2953744291,"package_name":"distlib","ecosystem":"pypi","requirements":"0.3.4","direct":false,"kind":"develop","optional":false},{"id":2953744292,"package_name":"entrypoints","ecosystem":"pypi","requirements":"0.4","direct":false,"kind":"develop","optional":false},{"id":2953744293,"package_name":"filelock","ecosystem":"pypi","requirements":"3.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744294,"package_name":"fonttools","ecosystem":"pypi","requirements":"4.31.2","direct":false,"kind":"develop","optional":false},{"id":2953744295,"package_name":"ghp-import","ecosystem":"pypi","requirements":"2.0.2","direct":false,"kind":"develop","optional":false},{"id":2953744296,"package_name":"identify","ecosystem":"pypi","requirements":"2.4.12","direct":false,"kind":"develop","optional":false},{"id":2953744297,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"4.11.3","direct":false,"kind":"develop","optional":false},{"id":2953744298,"package_name":"importlib-resources","ecosystem":"pypi","requirements":"5.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744299,"package_name":"iniconfig","ecosystem":"pypi","requirements":"1.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744300,"package_name":"ipykernel","ecosystem":"pypi","requirements":"6.10.0","direct":false,"kind":"develop","optional":false},{"id":2953744301,"package_name":"ipython","ecosystem":"pypi","requirements":"7.32.0","direct":false,"kind":"develop","optional":false},{"id":2953744302,"package_name":"ipython-genutils","ecosystem":"pypi","requirements":"0.2.0","direct":false,"kind":"develop","optional":false},{"id":2953744303,"package_name":"ipywidgets","ecosystem":"pypi","requirements":"7.7.0","direct":false,"kind":"develop","optional":false},{"id":2953744304,"package_name":"isort","ecosystem":"pypi","requirements":"5.10.1","direct":false,"kind":"develop","optional":false},{"id":2953744305,"package_name":"jedi","ecosystem":"pypi","requirements":"0.18.1","direct":false,"kind":"develop","optional":false},{"id":2953744306,"package_name":"jinja2","ecosystem":"pypi","requirements":"3.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744307,"package_name":"jsonschema","ecosystem":"pypi","requirements":"4.4.0","direct":false,"kind":"develop","optional":false},{"id":2953744308,"package_name":"jupyter","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"develop","optional":false},{"id":2953744309,"package_name":"jupyter-client","ecosystem":"pypi","requirements":"7.2.1","direct":false,"kind":"develop","optional":false},{"id":2953744310,"package_name":"jupyter-console","ecosystem":"pypi","requirements":"6.4.3","direct":false,"kind":"develop","optional":false},{"id":2953744311,"package_name":"jupyter-core","ecosystem":"pypi","requirements":"4.9.2","direct":false,"kind":"develop","optional":false},{"id":2953744312,"package_name":"jupyterlab-pygments","ecosystem":"pypi","requirements":"0.1.2","direct":false,"kind":"develop","optional":false},{"id":2953744313,"package_name":"jupyterlab-widgets","ecosystem":"pypi","requirements":"1.1.0","direct":false,"kind":"develop","optional":false},{"id":2953744314,"package_name":"jupytext","ecosystem":"pypi","requirements":"1.13.7","direct":false,"kind":"develop","optional":false},{"id":2953744315,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"1.4.2","direct":false,"kind":"develop","optional":false},{"id":2953744316,"package_name":"lazy-object-proxy","ecosystem":"pypi","requirements":"1.7.1","direct":false,"kind":"develop","optional":false},{"id":2953744317,"package_name":"markdown","ecosystem":"pypi","requirements":"3.3.6","direct":false,"kind":"develop","optional":false},{"id":2953744318,"package_name":"markdown-it-py","ecosystem":"pypi","requirements":"1.1.0","direct":false,"kind":"develop","optional":false},{"id":2953744319,"package_name":"markupsafe","ecosystem":"pypi","requirements":"2.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744320,"package_name":"matplotlib","ecosystem":"pypi","requirements":"3.5.1","direct":false,"kind":"develop","optional":false},{"id":2953744321,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"0.1.3","direct":false,"kind":"develop","optional":false},{"id":2953744322,"package_name":"mccabe","ecosystem":"pypi","requirements":"0.7.0","direct":false,"kind":"develop","optional":false},{"id":2953744323,"package_name":"mdit-py-plugins","ecosystem":"pypi","requirements":"0.3.0","direct":false,"kind":"develop","optional":false},{"id":2953744324,"package_name":"mergedeep","ecosystem":"pypi","requirements":"1.3.4","direct":false,"kind":"develop","optional":false},{"id":2953744325,"package_name":"mistune","ecosystem":"pypi","requirements":"0.8.4","direct":false,"kind":"develop","optional":false},{"id":2953744326,"package_name":"mkdocs","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"develop","optional":false},{"id":2953744327,"package_name":"mkdocs-material","ecosystem":"pypi","requirements":"6.2.8","direct":false,"kind":"develop","optional":false},{"id":2953744328,"package_name":"mkdocs-material-extensions","ecosystem":"pypi","requirements":"1.0.3","direct":false,"kind":"develop","optional":false},{"id":2953744329,"package_name":"mypy-extensions","ecosystem":"pypi","requirements":"0.4.3","direct":false,"kind":"develop","optional":false},{"id":2953744330,"package_name":"nbclient","ecosystem":"pypi","requirements":"0.5.13","direct":false,"kind":"develop","optional":false},{"id":2953744331,"package_name":"nbconvert","ecosystem":"pypi","requirements":"6.4.5","direct":false,"kind":"develop","optional":false},{"id":2953744332,"package_name":"nbformat","ecosystem":"pypi","requirements":"5.2.0","direct":false,"kind":"develop","optional":false},{"id":2953744333,"package_name":"nest-asyncio","ecosystem":"pypi","requirements":"1.5.4","direct":false,"kind":"develop","optional":false},{"id":2953744334,"package_name":"netcdf4","ecosystem":"pypi","requirements":"1.5.8","direct":false,"kind":"runtime","optional":false},{"id":2953744335,"package_name":"nodeenv","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744336,"package_name":"notebook","ecosystem":"pypi","requirements":"6.4.10","direct":false,"kind":"develop","optional":false},{"id":2953744337,"package_name":"numpy","ecosystem":"pypi","requirements":"1.21.5","direct":false,"kind":"runtime","optional":false},{"id":2953744338,"package_name":"packaging","ecosystem":"pypi","requirements":"21.3","direct":false,"kind":"runtime","optional":false},{"id":2953744339,"package_name":"pandas","ecosystem":"pypi","requirements":"1.3.5","direct":false,"kind":"runtime","optional":false},{"id":2953744340,"package_name":"pandocfilters","ecosystem":"pypi","requirements":"1.5.0","direct":false,"kind":"develop","optional":false},{"id":2953744341,"package_name":"parso","ecosystem":"pypi","requirements":"0.8.3","direct":false,"kind":"develop","optional":false},{"id":2953744342,"package_name":"pathspec","ecosystem":"pypi","requirements":"0.9.0","direct":false,"kind":"develop","optional":false},{"id":2953744343,"package_name":"pexpect","ecosystem":"pypi","requirements":"4.8.0","direct":false,"kind":"develop","optional":false},{"id":2953744344,"package_name":"pickleshare","ecosystem":"pypi","requirements":"0.7.5","direct":false,"kind":"develop","optional":false},{"id":2953744345,"package_name":"pillow","ecosystem":"pypi","requirements":"9.0.1","direct":false,"kind":"develop","optional":false},{"id":2953744346,"package_name":"platformdirs","ecosystem":"pypi","requirements":"2.5.1","direct":false,"kind":"develop","optional":false},{"id":2953744347,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"develop","optional":false},{"id":2953744348,"package_name":"pre-commit","ecosystem":"pypi","requirements":"2.17.0","direct":false,"kind":"develop","optional":false},{"id":2953744349,"package_name":"prometheus-client","ecosystem":"pypi","requirements":"0.13.1","direct":false,"kind":"develop","optional":false},{"id":2953744350,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"3.0.28","direct":false,"kind":"develop","optional":false},{"id":2953744351,"package_name":"psutil","ecosystem":"pypi","requirements":"5.9.0","direct":false,"kind":"develop","optional":false},{"id":2953744352,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"0.7.0","direct":false,"kind":"develop","optional":false},{"id":2953744353,"package_name":"py","ecosystem":"pypi","requirements":"1.11.0","direct":false,"kind":"develop","optional":false},{"id":2953744354,"package_name":"pycparser","ecosystem":"pypi","requirements":"2.21","direct":false,"kind":"develop","optional":false},{"id":2953744355,"package_name":"pygments","ecosystem":"pypi","requirements":"2.11.2","direct":false,"kind":"develop","optional":false},{"id":2953744356,"package_name":"pylint","ecosystem":"pypi","requirements":"2.13.3","direct":false,"kind":"develop","optional":false},{"id":2953744357,"package_name":"pymdown-extensions","ecosystem":"pypi","requirements":"9.3","direct":false,"kind":"develop","optional":false},{"id":2953744358,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.0.7","direct":false,"kind":"runtime","optional":false},{"id":2953744359,"package_name":"pyproj","ecosystem":"pypi","requirements":"3.3.1","direct":false,"kind":"runtime","optional":false},{"id":2953744360,"package_name":"pyrsistent","ecosystem":"pypi","requirements":"0.18.1","direct":false,"kind":"develop","optional":false},{"id":2953744361,"package_name":"pytest","ecosystem":"pypi","requirements":"6.2.5","direct":false,"kind":"develop","optional":false},{"id":2953744362,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"2.12.1","direct":false,"kind":"develop","optional":false},{"id":2953744363,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.8.2","direct":false,"kind":"runtime","optional":false},{"id":2953744364,"package_name":"pytz","ecosystem":"pypi","requirements":"2022.1","direct":false,"kind":"runtime","optional":false},{"id":2953744365,"package_name":"pywin32","ecosystem":"pypi","requirements":"303","direct":false,"kind":"develop","optional":false},{"id":2953744366,"package_name":"pywinpty","ecosystem":"pypi","requirements":"2.0.5","direct":false,"kind":"develop","optional":false},{"id":2953744367,"package_name":"pyyaml","ecosystem":"pypi","requirements":"6.0","direct":false,"kind":"develop","optional":false},{"id":2953744368,"package_name":"pyyaml-env-tag","ecosystem":"pypi","requirements":"0.1","direct":false,"kind":"develop","optional":false},{"id":2953744369,"package_name":"pyzmq","ecosystem":"pypi","requirements":"22.3.0","direct":false,"kind":"develop","optional":false},{"id":2953744370,"package_name":"qtconsole","ecosystem":"pypi","requirements":"5.3.0","direct":false,"kind":"develop","optional":false},{"id":2953744371,"package_name":"qtpy","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"develop","optional":false},{"id":2953744372,"package_name":"rasterio","ecosystem":"pypi","requirements":"1.2.10","direct":false,"kind":"runtime","optional":false},{"id":2953744373,"package_name":"regex","ecosystem":"pypi","requirements":"2022.3.15","direct":false,"kind":"develop","optional":false},{"id":2953744374,"package_name":"rioxarray","ecosystem":"pypi","requirements":"0.11.1","direct":false,"kind":"runtime","optional":false},{"id":2953744375,"package_name":"scipy","ecosystem":"pypi","requirements":"1.7.3","direct":false,"kind":"runtime","optional":false},{"id":2953744376,"package_name":"send2trash","ecosystem":"pypi","requirements":"1.8.0","direct":false,"kind":"develop","optional":false},{"id":2953744377,"package_name":"setuptools","ecosystem":"pypi","requirements":"62.3.2","direct":false,"kind":"runtime","optional":false},{"id":2953744378,"package_name":"setuptools-scm","ecosystem":"pypi","requirements":"6.4.2","direct":false,"kind":"develop","optional":false},{"id":2953744379,"package_name":"six","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":2953744380,"package_name":"snuggs","ecosystem":"pypi","requirements":"1.4.7","direct":false,"kind":"runtime","optional":false},{"id":2953744381,"package_name":"soupsieve","ecosystem":"pypi","requirements":"2.3.1","direct":false,"kind":"develop","optional":false},{"id":2953744382,"package_name":"terminado","ecosystem":"pypi","requirements":"0.13.3","direct":false,"kind":"develop","optional":false},{"id":2953744383,"package_name":"testpath","ecosystem":"pypi","requirements":"0.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744384,"package_name":"toml","ecosystem":"pypi","requirements":"0.10.2","direct":false,"kind":"develop","optional":false},{"id":2953744385,"package_name":"tomli","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"develop","optional":false},{"id":2953744386,"package_name":"tornado","ecosystem":"pypi","requirements":"6.1","direct":false,"kind":"develop","optional":false},{"id":2953744387,"package_name":"traitlets","ecosystem":"pypi","requirements":"5.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744388,"package_name":"typed-ast","ecosystem":"pypi","requirements":"1.5.2","direct":false,"kind":"develop","optional":false},{"id":2953744389,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.1.1","direct":false,"kind":"develop","optional":false},{"id":2953744390,"package_name":"virtualenv","ecosystem":"pypi","requirements":"20.14.0","direct":false,"kind":"develop","optional":false},{"id":2953744391,"package_name":"watchdog","ecosystem":"pypi","requirements":"2.1.7","direct":false,"kind":"develop","optional":false},{"id":2953744392,"package_name":"wcwidth","ecosystem":"pypi","requirements":"0.2.5","direct":false,"kind":"develop","optional":false},{"id":2953744393,"package_name":"webencodings","ecosystem":"pypi","requirements":"0.5.1","direct":false,"kind":"develop","optional":false},{"id":2953744394,"package_name":"widgetsnbextension","ecosystem":"pypi","requirements":"3.6.0","direct":false,"kind":"develop","optional":false},{"id":2953744395,"package_name":"wrapt","ecosystem":"pypi","requirements":"1.14.0","direct":false,"kind":"develop","optional":false},{"id":2953744396,"package_name":"xarray","ecosystem":"pypi","requirements":"2022.3.0","direct":false,"kind":"runtime","optional":false},{"id":2953744397,"package_name":"zipp","ecosystem":"pypi","requirements":"3.7.0","direct":false,"kind":"develop","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2022-08-27T19:50:24.598Z","updated_at":"2022-08-27T19:50:24.598Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/pyproject.toml","dependencies":[{"id":2953747144,"package_name":"python","ecosystem":"pypi","requirements":"^3.8,\u003c3.10","direct":true,"kind":"runtime","optional":false},{"id":2953747150,"package_name":"numpy","ecosystem":"pypi","requirements":"^1.19.5","direct":true,"kind":"runtime","optional":false},{"id":2953747152,"package_name":"scipy","ecosystem":"pypi","requirements":"^1.7.1","direct":true,"kind":"runtime","optional":false},{"id":2953747154,"package_name":"rasterio","ecosystem":"pypi","requirements":"^1.2.8","direct":true,"kind":"runtime","optional":false},{"id":2953747160,"package_name":"netCDF4","ecosystem":"pypi","requirements":"^1.5.7","direct":true,"kind":"runtime","optional":false},{"id":2953747162,"package_name":"rioxarray","ecosystem":"pypi","requirements":"^0.11.1","direct":true,"kind":"runtime","optional":false},{"id":2953747164,"package_name":"xarray","ecosystem":"pypi","requirements":"^2022.3.0","direct":true,"kind":"runtime","optional":false},{"id":2953747166,"package_name":"mkdocs-material","ecosystem":"pypi","requirements":"^6.1.5","direct":true,"kind":"develop","optional":false},{"id":2953747168,"package_name":"pytest","ecosystem":"pypi","requirements":"^6.0","direct":true,"kind":"develop","optional":false},{"id":2953747170,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"^2.10.1","direct":true,"kind":"develop","optional":false},{"id":2953747172,"package_name":"pylint","ecosystem":"pypi","requirements":"^2.6.0","direct":true,"kind":"develop","optional":false},{"id":2953747174,"package_name":"black","ecosystem":"pypi","requirements":"20.8b1","direct":true,"kind":"develop","optional":false},{"id":2953747176,"package_name":"jupyter","ecosystem":"pypi","requirements":"^1.0","direct":true,"kind":"develop","optional":false},{"id":2953747177,"package_name":"matplotlib","ecosystem":"pypi","requirements":"^3.4.1","direct":true,"kind":"develop","optional":false},{"id":2953747179,"package_name":"jupytext","ecosystem":"pypi","requirements":"^1.11.2","direct":true,"kind":"develop","optional":false},{"id":2953747181,"package_name":"pre-commit","ecosystem":"pypi","requirements":"^2.13.0","direct":true,"kind":"develop","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/code_quality_checks.yml","sha":null,"kind":"manifest","created_at":"2023-01-29T02:15:44.062Z","updated_at":"2023-01-29T02:15:44.062Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/.github/workflows/code_quality_checks.yml","dependencies":[{"id":7219876156,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7219876160,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7219876163,"package_name":"snok/install-poetry","ecosystem":"actions","requirements":"v1.1.4","direct":true,"kind":"composite","optional":false},{"id":7219876167,"package_name":"actions/cache","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/docs_publish.yml","sha":null,"kind":"manifest","created_at":"2023-01-29T02:15:44.195Z","updated_at":"2023-01-29T02:15:44.195Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/.github/workflows/docs_publish.yml","dependencies":[{"id":7219876452,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7219876453,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pypi_publish.yml","sha":null,"kind":"manifest","created_at":"2023-01-29T02:15:44.224Z","updated_at":"2023-01-29T02:15:44.224Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/.github/workflows/pypi_publish.yml","dependencies":[{"id":7219876457,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7219876458,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test_pypi_publish.yml","sha":null,"kind":"manifest","created_at":"2023-01-29T02:15:44.265Z","updated_at":"2023-01-29T02:15:44.265Z","repository_link":"https://github.com/NAU-PIXEL/roughness/blob/main/.github/workflows/test_pypi_publish.yml","dependencies":[{"id":7219876910,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7219876911,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]}],"score":null,"created_at":"2025-09-04T15:51:01.695Z","updated_at":"2025-10-07T08:12:43.681Z","avatar_url":"https://github.com/NAU-PIXEL.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":[],"readme_doi_urls":["https://doi.org/10.1016/j.icarus.2014.11.009","https://doi.org/10.1038/s41561-018-0065-0","https://doi.org/10.5281/zenodo.5498089"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/29177","html_url":"https://science.ecosyste.ms/projects/29177","bibtex_url":"https://science.ecosyste.ms/projects/29177/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/29177/export.apalike"}