{"id":27058730,"url":"https://github.com/brews/stcaf","last_synced_at":"2025-04-05T12:16:39.617Z","repository":{"id":283377771,"uuid":"948115751","full_name":"brews/stcaf","owner":"brews","description":"Prototype framework for sea-level change modeling.","archived":false,"fork":false,"pushed_at":"2025-03-26T23:29:09.000Z","size":42,"stargazers_count":0,"open_issues_count":10,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T00:26:32.057Z","etag":null,"topics":["package","prototype","python","sealevel"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brews.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":"2025-03-13T19:20:59.000Z","updated_at":"2025-03-26T23:29:12.000Z","dependencies_parsed_at":"2025-03-20T03:31:48.394Z","dependency_job_id":null,"html_url":"https://github.com/brews/stcaf","commit_stats":null,"previous_names":["brews/stcaf"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brews%2Fstcaf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brews%2Fstcaf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brews%2Fstcaf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brews%2Fstcaf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brews","download_url":"https://codeload.github.com/brews/stcaf/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247332584,"owners_count":20921854,"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":["package","prototype","python","sealevel"],"created_at":"2025-04-05T12:16:39.003Z","updated_at":"2025-04-05T12:16:39.574Z","avatar_url":"https://github.com/brews.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# stcaf\n\n[![Python package](https://github.com/brews/stcaf/actions/workflows/pythonpackage.yml/badge.svg)](https://github.com/brews/stcaf/actions/workflows/pythonpackage.yml)\n[![codecov](https://codecov.io/gh/brews/stcaf/graph/badge.svg?token=6XFLZLFYDY)](https://codecov.io/gh/brews/stcaf)\n\nPrototype framework for sea-level change modeling.\n\n\u003e [!CAUTION]\n\u003e This is a prototype. It is likely to change in breaking ways. It might delete all your data. Don't use it in production.\n\n## Examples\n\nThis example reads in a NetCDF file with climate fields and applies models projecting components of sea level change, then integrates those components together.\n\n```python\n\nfrom stcaf import (\n    build_sealevel_component_model_registry,\n    Climate,\n    project_sealevel_components,\n    integrate_sealevel_components,\n)\nimport xarray as xr\n\n\nclimate = Climate(xr.open_dataset(\"example_climate_file.nc\"))\n\n# Collect sea level component models registered as plugins.\nregistry = build_sealevel_component_model_registry()\n\n# Run registered models.\ncomponents = project_sealevel_components(\n    climate,\n    [\n        registry[\"stcaf.bump\"](),\n        registry[\"stcaf.bump\"](bump=2.0),\n    ],\n)\n\nintegrated_sealevel = integrate_sealevel_components(components)\n```\nThe \"bump\" model is a toy used for testing. It takes input \"temperature\" and adds 1 to it for each model step: preprocess, fit, project, postprocess. The result is output as \"sea_level_change\". Setting the `bump` parameter when the model is intialized changes the size of each bump.\n\nComponent models can be any object following the `stcaf.SealevelComponentModel` protocol. You can pass these instances in directly or use them through the registry by registering the object at the \"stcaf.sealevel_component_models\" entrypoint of a Python package. Plugins from installed packages are namespaced by the package name; meaning models are referenced from the registry like `registry[\"\u003cpackage_name\u003e.\u003cmodel_name\u003e\"]` to avoid naming conflicts.\n\n## Installation\n\nInstall the unreleased bleeding-edge version of the package with:\n```\npip install git+https://github.com/brews/stcaf\n```\n\n## Support\n\nSource code is available online at https://github.com/brews/stcaf/. This software is open source and available under the Apache License, Version 2.0.\n\nPlease file issues in the issue tracker at https://github.com/brews/stcaf/issues.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrews%2Fstcaf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrews%2Fstcaf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrews%2Fstcaf/lists"}